ajax请求401时无法获取后端的错误信息
ajax发送跨域请求,后端会验证前端的自定义请求头,若验证失败后端会将该请求定义为401,并返回相应的提示信息,浏览器能看到后端返回的提示信息,但前端无法通过代码获取,无论是用jQuery内置的ajax还是用axios
有什么解决办法吗?请指教,谢谢
jQuery代码
打印出的错误对象并不包含后端返回的提示信息,前端也就无法获取
请求详细信息
这里能看到后端返回的提示信息,如何通过代码获取呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我也碰到这个问题了,只不过,我用的是yii2,误打误撞解决了。我觉得思路应该还是要修改你的后端代码。附上我解决问题的思路
https://segmentfault.com/a/11...
axios里面不是有拦截器吗?服务端返回401,你在拦截器哪里处理一下就行了,你还要获取返回的信息干什么?
被跨域拦截后代码不可能获取到任何响应的信息。你只能在后端代码里加上cors的响应头ACCESS-CONTROL-ALLOW-ORIGIN,注意最好不要是*,直接是具体的ip地址或url加端口号,否则容易出问题。如果还是提示缺乏某个ACCESS-CONTROL-之类的响应头,再加上。