我目前正在经历非常奇怪的行为。
如果我的网址没有以斜线结尾,则所有链接都会被破坏。具体来说,如果我的网址是“http://localhost:8080/SharedTodoListDemo/todolist”,则此代码
<a href="delete" class="btn btn-primary"><spring:message code="todolist.button.delete"/></a>
重定向到“http://localhost:8080/SharedTodoListDemo/delete”
如果我的网址是“http://localhost:8080/SharedTodoListDemo/todolist/”
然后相同的代码重定向(正确)为“http://localhost:8080/SharedTodoListDemo/todolist/delete”
您是否有任何想法可能会发生这种情况以及该如何应对?我正在使用Spring + Spring MVC并且需要统一链接以便能够映射到控制器方法。
感谢。
编辑:
我也尝试过 href =“/ delete”和 href =“./ delete”。第一个重定向更加奇怪地重定向到“http://localhost:8080/delete”,无论是否有反斜杠,第二个都与上面相同。
答案 0 :(得分:0)
好的,过了一会儿我自己解决了。
这就是诀窍:
<spring:url value="/product/new" var="springLink" />
<a href="${springLink}">spring link</a>
以上两种情况都有效(原始网址结束或不包含斜线)。
与这些相比,哪些不起作用:
<a href="new">my link</a>
<a href="/new">my link</a>
<a href="product/new">my link</a>
<a href="/product/new">my link</a>