3
回答
jfinal拦截器没有自动加入contextPath
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

controller里面redirect直接可以写基于项目的路径,而在拦截器里面则需要这样 ai.getController().redirect(ai.getController().getRequest().getContextPath()+"/admin?to="+ai.getController().getRequest().getHeader("Referer"));

能否考虑加入和controller一样的处理呢?还是说有什么其他的考虑。@jfinal

举报
孙青彪
发帖于3年前 3回/140阅
共有3个答案 最后回答: 3年前

引用来自“JFinal”的评论

注意看一下 com.jfinal.render.RedirectRender.render() 方法的源码,已经添加了 context path 的处理

引用来自“孙青彪”的评论

我用的是1.8的,1.9的还没有搞呢。
发现了一个问题,com.jfinal.render.RedirectRender.render()确实做了处理,不过,如果我是在页面上的菜单上点某个链接,恰好这个链接需要登录才能进去,那么就不会加上contextPath。在地址栏输入的话,是可以正确加上contextPath的。最后没有办法,我使用了原生的ai.getController().getResponse().sendRedirect()才能2者都可以正确拦截且重定向。

引用来自“JFinal”的评论

注意看一下 com.jfinal.render.RedirectRender.render() 方法的源码,已经添加了 context path 的处理
我用的是1.8的,1.9的还没有搞呢。
顶部