首页  >  文章  >  web前端  >  为什么我的 React Native Fetch 请求在 iOS 上失败并显示“网络请求失败”?

为什么我的 React Native Fetch 请求在 iOS 上失败并显示“网络请求失败”?

Patricia Arquette
Patricia Arquette原创
2024-10-30 09:13:02332浏览

Why Does My React Native Fetch Request Fail with

React Native Fetch 网络请求失败

在新建的 React Native 项目中,调用 fetch() 与 Facebook 演示影片交互API 可能会导致“网络请求失败”错误。由于错误消息不明确且 Chrome 控制台缺乏调试支持,这可能会令人沮丧。

根本原因:

根本问题在于 iOS 对默认情况下 HTTP 请求,仅允许 HTTPS 连接。

解决方案:

要在 iOS 项目中启用 HTTP 请求,请修改 XCode 项目中的 info.plist 文件“支持文件”部分:

  1. 将以下键值对添加到文件中:
<code class="plist"><key>NSAppTransportSecurity</key></code>
  1. 在键中添加字典:
<code class="plist"><key>NSAppTransportSecurity</key>
<dict></code>
  1. 在字典中添加另一个键值对:
<code class="plist"><key>NSAllowsArbitraryLoads</key>
<true/>
</dict></code>

此设置将授予您的应用在 iOS 设备上发出 HTTP 请求的权限。

一旦进行更改并重建项目,提取请求就会成功,因为您的本地开发环境和 iOS 设备都将允许 HTTP 连接。

以上是为什么我的 React Native Fetch 请求在 iOS 上失败并显示“网络请求失败”?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn