如何在 React Native 中抛出 Catch in fetch POST 请求

卡斯帕低

我在 React Native 中调用 POST 请求时遇到调用错误的问题,我知道有一个捕获,但它只为网络连接抛出,当我有一个错误时,我如何从响应中得到错误错误的密码或错误的用户名,例如从响应中调用此错误时:

Object {
  "error": "invalid_request",
  "error_description": "Missing form parameter: grant_type",
}
    fetch("https://websiteo.com/auth/realms/realmsid/protocol/openid-connect/token", {
      method: 'POST',
      headers: myHeaders,
      body: urlencoded.toString(),
    })
      .then(response => response.json())
      .then(result => {
        //console.log(result)
        console.log(result)
        saveToken('secure_access_token', `${result.access_token}`)
        props.navigation.navigate('HomeApp') //i need to throw catch also when username or password wrong
      })
      .catch(error => alert(error.response.data)) //This is only thrown when network problems 

何塞·罗哈斯

您可以在响应 json 中验证是否为 200 或失败,如下所示:

fetch("https://websiteo.com/auth/realms/realmsid/protocol/openid-connect/token", {
  method: 'POST',
  headers: myHeaders,
  body: urlencoded.toString(),
})
  .then(response => {
     if (response.ok) {
        return response.json();
     } else {
        throw new Error('Something went wrong');
     }
  })
  .then(result => {
    //console.log(result)
    console.log(result)
    saveToken('secure_access_token', `${result.access_token}`)
    props.navigation.navigate('HomeApp')
  })
  .catch(error => alert(error.response.data)) //This is only thrown when network problems 

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在获取请求中传递POST参数?-React Native

.catch() 在 react-native 的 fetch 中

如何在React Native的Fetch函数中设置超时

如何在React Native中构造一个POST请求主体而不是字符串化的json而不是json?

React - 如何在使用 fetch 完成 POST 请求后重定向路径

如何在 React 应用程序中使用 Fetch 向 Flask API 发送 POST 请求

如何在React Native Sagger中请求数据

如何在React Native中请求LOCATION PERMISSION?

如何在React Native中取消Image.getSize()请求?

如何在React Native中请求iOS存储权限?

对 Microsoft Azure 的 React Native fetch 请求失败

如何在 React 中获取 POST 请求值

React Native Fetch请求在Laravel API中引发“网络请求失败”错误

React - PHP:如何通过 POST 请求的 fetch 请求解决 CORS 问题?

在 React-Native 中尝试 POST 请求时网络请求失败

React Native + fetch + API:DELETE 请求在 App 中失败,在 Postman 中有效

如何在PHP中接收Fetch()POST?

React Native,Fetch和Dispatch:如何在mapDispatchToProps()中访问responseData?

如何在React Native XMLHttpRequest API或Fetch Api中禁用ssl检查?

如何在 React Native 的 fetch 方法中访问这个 rss 变量?

React Native Expo fetch() 错误 网络请求失败

React Native Fetch API调用未发出请求

React Native fetch()网络请求是否为Android失败?

HTTP fetch 请求总是在 react-native 上失败

React中的POST请求问题

React Native Fetch POST TypeError:标头字段名称中的字符无效

如何在运行时请求对React Native中Android设备位置的许可?

如何在React Native中为API请求创建进度条?

如何在 React-Native 或 Expo 的 fetch 中使用 headers