在React Redux-Saga中调用api 60秒后产生调用超时

问题描述 投票:0回答:1

在我的其余API后端(django)中,我进行繁重的处理,通常,生成结果需要1.5分钟,在那段时间我在我的前端反应应用程序中收到此错误。

export function* create(action) {
  try {
    const { payload } = action;
    const response = yield call(api.addPost, payload); **//can i set timout for this api call, here timeout after 60 second **  
    if (response.status === 200) {
      console.log('pass 200 check');
      yield put(appActions.setResourceResponse(response.data));
      console.log(response.data);
      payload.push('/add-news');
    }
  } catch (error) {
    console.log(error);
    yield put(
      a.setResponse({
        message: error.response.data,
        status: error.response.status,
      }),
    );
  }
}

错误:超出60000ms超时

因此,对等连接丢失了。

如何在redux-saga中设置请求超时

reactjs django-rest-framework react-redux redux-saga
1个回答
1
投票

如果您使用的是axios,则可以像这样更改超时设置。

axios({
    method: 'post',
    url: 'http://127.0.0.1:9000',
    timeout: 60 * 2 * 1000, // Let's say you want to wait at least 2 mins
    data: {
      id: '1234',
    }
  })
© www.soinside.com 2019 - 2024. All rights reserved.