首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查React Saga中API post的成功/错误

如何检查React Saga中API post的成功/错误
EN

Stack Overflow用户
提问于 2020-11-02 11:32:47
回答 1查看 120关注 0票数 1

我在页面上有一个表单,在填写字段时,我单击submit。它向后端发出Post API调用。我也希望从API调用中得到一些响应。我正在尝试弄清楚如何区分成功响应和错误响应。

例如,对于成功,我会得到以下响应。

代码语言:javascript
复制
{
  "data": {
    "attributes": {
      //These are the fields and i display the field values on the page
      "age": 32,
      "sex": 'male'
    }
  }
}

在API调用失败的情况下,我会得到以下响应

代码语言:javascript
复制
{
  "errors": [
    {
      "status": "401",
      "title": "Unauthorized request"
    }
  ]
}

即使有任何其他失败的原因,例如Unauthorized accessInternal server error,我也会在errors数组中得到它们各自的"status“和"title”,如上所示。

如何区分响应是成功还是失败,如果是失败,如何检查返回的失败状态。有没有人能帮我理解一下。

EN

回答 1

Stack Overflow用户

发布于 2020-11-02 11:37:45

您还可以添加两个操作-一个用于成功,另一个用于失败。

在Saga函数*中,添加try-catch块。在try中,在Api post call命令之后,可以请求成功动作。在catch中,您可以请求失败操作。

代码语言:javascript
复制
try {
  const result = yield call(axios.POST, ....) // API Post call
  yield put(actions.successAction(result))
} catch(error) {
  yield put(actions.failAction(error))
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64639462

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档