Mojolicious不区分这两个要求:
GET /page
GET /page/
呈现相同的页面。
但是当渲染页面有相对链接时,你可以进入下一个陷阱。
例如,如果您的page
有:
<a href="trap">Trap</a>
如果您先点击它,请转到/trap
页面
但是当您点击第二次请求时,您将转到/page/trap
页面。
我们应该对此采取措施还是保留原样?
答案 0 :(得分:0)
您始终只需将尾部斜杠重定向到非尾部斜杠网址即可。我不确定100%最佳解决方案是什么,但是
$self->redirect_to(
$self->url_with->path($self->url_for->path->trailing_slash(0)))
and return
if $self->req->url->path->trailing_slash;
可以使用。
这种方式/ page /是302重定向到/ page和/ page显示链接,所以它总是一致的。
我同意@Logioniz,但这不是一个真正的Mojolicious问题。