在做登录跳转时,发现页面没有跳转,并且有报错信息(Uncaught (in promise) 未知错误!Promise.then (async))。
一、问题描述
服务端返回500报错:
能正常发出请求:
二、分析问题
首先,通过apifox测试接口,发现能正常接收数据 —— 那么极有可能是自己前端的问题。
1、async / await是否错误
能正常接收服务端发送的msg
,表明请求从发出到接受是跑得通的。
2、路由拦截permission
通过观察相关逻辑,没有查到错误,通过打印信息,能正常执行到页面跳转部分。
3、axios请求拦截器
请求拦截器能够正常获取token信息,并且添加到了请求头上。
响应拦截器拦截500报错是成功执行了,Message组件
进行了正常的错误提示。
所以好像自己并没有什么错误
三、解决问题
这个问题困扰了我一天后,直接转换问题角度——为什么apifox能够测试成功?
结果
自己使用apifox发起请求的时候,对token在请求头上的挂载前面并没有加上Bearer
,但登录时却获得了想要的响应数据。
解决
既然请求头携带的token不需要加上Bearer
,去掉即可。结果成功解决问题。