reactjs – 将错误响应拦截器放在redux-axios-middleware上
发布时间:2020-12-15 20:31:55 所属栏目:百科 来源:网络整理
导读:我有 https://github.com/svrcekmichal/redux-axios-middleware的问题. 我想设置拦截器响应(错误).但无法成功设置它. 这是我的代码: function interceptorResponse({ dispatch,getState,getAction },response) { console.log(response);}export const clien
我有
https://github.com/svrcekmichal/redux-axios-middleware的问题.
我想设置拦截器响应(错误).但无法成功设置它. 这是我的代码: function interceptorResponse({ dispatch,getState,getAction },response) { console.log(response); } export const client = axios.create({ baseURL: API_URL,headers: { Accept: 'application/json',},}); export const clientOptions = { interceptors: { request: [interceptorRequest],response: [interceptorResponse],}; console.log(响应)仅在响应为200时才响应.如何将其设置为接受错误响应? 我试过像这样设置它 function interceptorResponse({ dispatch,getAction }) { return response => response.data,(error) => { const meta = error.response.data.meta; const { code,status } = meta; console.log(meta); }; } 但仍然没有显示任何东西. 任何解决方案? 解决方法
以下是ES6的示例用法:
import axios from 'axios' import axiosMiddleware from 'redux-axios-middleware' const options = { // not required,but use-full configuration option returnRejectedPromiSEOnError: true,interceptors: { request: [ ({ getState,dispatch },config) => { // Request interception return config } ],response: [ { success: ({ dispatch },response) => { // Response interception return response },error: ({ dispatch },error) => { // Response Error Interception return Promise.reject(error) } } ] } } export default axiosMiddleware(axios,options) 请注意,创建的中间件应该传递给createStore() (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |