前端使用mui框架发送ajax,设置请求类型为json格式,后端的service使用@PreAuthorize("isAuthenticated()")注解进行是否登录的校验,当用户匿名时(未登录),Spring security框架会返回登录页面,xml配置如下: <!-- 过滤器配置 --> <http pattern="/login.jsp*" security="none" /> <!-- 不过滤此URL --> <http auto-config="true"> <!-- 要保护的URL,只有拥有 ROLE_USER角色的用户才能访问 --> <form-login login-page="/login.jsp" authentication-failure-url="/login.jsp?error=1"/> <remember-me /> </http> 而在实际测试过程中没有实现页面跳转,浏览器的控制台提示: "parsererror" SyntaxError: Unexpected token < in JSON at position 2 at Function.parse [as parseJSON] (<anonymous>) at XMLHttpRequest.u.onreadystatechange (mui.min.js:7) 之前使用jquery的ajax发送请求时并没有出现这个问题,应该怎么解决?
F12调试,看看 Network 面板的Ajax请求,看看返回的数据是什么。 另外,给你一个建议:login.jsp 搞成自动根据请求Header判断是否 Ajax 请求决定返回的内容:JSON 或 HTML 。 参考文章,如何判断 Ajax 请求:http://blog.csdn.net/lixld/article/details/52353276 上面的逻辑简单在 JSP 里面暴力写一写,输出 JSON 或者原封不动的输出 HTML 就可以啦。######根据请求头去判断
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。