File tree Expand file tree Collapse file tree 1 file changed +13
-9
lines changed Expand file tree Collapse file tree 1 file changed +13
-9
lines changed Original file line number Diff line number Diff line change @@ -86,9 +86,10 @@ service.interceptors.response.use( async res => {
86
86
setToken ( refreshTokenRes . data )
87
87
requestList . forEach ( cb => cb ( ) )
88
88
return service ( res . config )
89
- } catch ( e ) {
90
- // 2.2 刷新失败,则只能执行登出操作
91
- // 为什么需要 catch 异常呢?刷新失败时,请求因为 Promise.reject 触发异常。
89
+ } catch ( e ) { // 为什么需要 catch 异常呢?刷新失败时,请求因为 Promise.reject 触发异常。
90
+ // 2.2 刷新失败,只回放队列的请求
91
+ requestList . forEach ( cb => cb ( ) )
92
+ // 提示是否要登出。即不回放当前请求!不然会形成递归
92
93
return handleAuthorized ( ) ;
93
94
} finally {
94
95
requestList = [ ]
@@ -98,12 +99,11 @@ service.interceptors.response.use( async res => {
98
99
// 添加到队列,等待刷新获取到新的令牌
99
100
return new Promise ( resolve => {
100
101
requestList . push ( ( ) => {
101
- config . headers [ 'Authorization' ] = 'Bearer ' + getAccessToken ( ) // 让每个请求携带自定义token 请根据实际情况自行修改
102
- resolve ( service ( config ) )
102
+ res . config . headers [ 'Authorization' ] = 'Bearer ' + getAccessToken ( ) // 让每个请求携带自定义token 请根据实际情况自行修改
103
+ resolve ( service ( res . config ) )
103
104
} )
104
105
} )
105
106
}
106
- return handleAuthorized ( ) ;
107
107
} else if ( code === 500 ) {
108
108
Message ( {
109
109
message : msg ,
@@ -123,9 +123,13 @@ service.interceptors.response.use( async res => {
123
123
} )
124
124
return Promise . reject ( new Error ( msg ) )
125
125
} else if ( code !== 200 ) {
126
- Notification . error ( {
127
- title : msg
128
- } )
126
+ if ( msg === '无效的刷新令牌' ) { // hard coding:忽略这个提示,直接登出
127
+ console . log ( '无效的刷新令牌' )
128
+ } else {
129
+ Notification . error ( {
130
+ title : msg
131
+ } )
132
+ }
129
133
return Promise . reject ( 'error' )
130
134
} else {
131
135
return res . data
You can’t perform that action at this time.
0 commit comments