Redux 在我的saga请求中发生错误时访问服务器响应

Redux 在我的saga请求中发生错误时访问服务器响应,redux,request,axios,redux-saga,http-error,Redux,Request,Axios,Redux Saga,Http Error,我正在使用库redux saga requests进行网络通信和高级状态管理。根据的指导,我已经设置了一个全局错误处理程序,以便在服务器请求超时或用户出现连接问题时显示通知 但是,当我收到服务器错误(例如500)时,我无法访问操作中的响应。服务器响应根本不存在 有没有一种方法可以访问此对象,同时仍保持在redux saga的限制和规则范围内 这是初始的存储设置-注意,onErrorSaga没有给我网络响应,所以我最好使用默认行为-发送一个后缀\u ERROR操作,该操作可以被我的reducer捕

我正在使用库
redux saga requests
进行网络通信和高级状态管理。根据的指导,我已经设置了一个全局错误处理程序,以便在服务器请求超时或用户出现连接问题时显示通知

但是,当我收到服务器错误(例如500)时,我无法访问操作中的响应。服务器响应根本不存在

有没有一种方法可以访问此对象,同时仍保持在
redux saga
的限制和规则范围内

这是初始的存储设置-注意,
onErrorSaga
没有给我网络响应,所以我最好使用默认行为-发送一个后缀
\u ERROR
操作,该操作可以被我的reducer捕获:


函数*onErrorSaga(错误、动作){
console.log('error',error)
console.log('action',action)
//这些都不包含服务器响应,
//只是客户端抛出的错误消息和堆栈。
产生{错误}
}
函数*rootSaga(轴向){
生成createRequestInstance({
司机:{
默认值:createAxiosDriver(axiosInstance),
},
奥尼罗:奥尼罗传奇,
})
产量要求()
}
const configureStore=initialState=>{
const sagaMiddleware=createSagaMiddleware()
const Middleware=[thunkMiddleware,requestsPromiseMiddleware({auto:true}),sagaMiddleware,trackingMiddleware]
const store=createStore(rootReducer、initialState、composeWithDevTools(applyMiddleware(…中间件)))
sagaMiddleware.run(rootSaga,axiosistance)
退货商店
}
导出常量configureStoreAsync=()=>{
返回新承诺((解决、拒绝)=>{
const store=configureStore()
商店
.dispatch(fetchAppInitialization())
。然后(结果=>解析(存储))
.catch(e=>拒绝(存储))
})
}
以下是我当前如何处理状态中的错误(然后由通知组件显示):


从“../actions/actions.NOTIFICATION”导入{CLOSE_NOTIFICATION}
导出默认值(状态=[],操作=>{
if(action.type.endsWith(“U错误”)){
返回{
键入:“警告”,
标题:action.error.message,
消息:`${action.error.stack.substring(0200)}…`,
开放:是的,
时间戳:新日期(),
}
}
开关(动作类型){
结案通知:
返回{
……国家,
开:错,
}
违约:
返回状态
}
}

事实证明这比我想象的要容易得多。
操作
对象实际上包含服务器响应

响应的路径是:

action.error.response.data