iOS上的React Native Expo网络请求失败

iOS上的React Native Expo网络请求失败,ios,react-native,expo,Ios,React Native,Expo,有些问题是相关的,但没有一个回答我的问题,所以我想让我们自己问一些细节 我正在使用Expo SDK的React本机构建。我使用的是localhost graphqlapi,但似乎来自http端点的iOS数据。根据来源和其他相关问题,您必须在iOS构建中填充info.plist文件 但是因为我使用的是Expo SDK,所以我没有iOS版本,您可以将infoPList对象添加到app.json。答案也表明了这一点 因此,我在我的app.js中添加了以下内容,但没有成功: "ios": {

有些问题是相关的,但没有一个回答我的问题,所以我想让我们自己问一些细节

我正在使用Expo SDK的React本机构建。我使用的是localhost graphqlapi,但似乎来自
http
端点的iOS数据。根据来源和其他相关问题,您必须在iOS构建中填充
info.plist
文件

但是因为我使用的是Expo SDK,所以我没有iOS版本,您可以将
infoPList
对象添加到
app.json
。答案也表明了这一点

因此,我在我的
app.js
中添加了以下内容,但没有成功:


"ios": {
    "supportsTablet": false,
    "infoPlist": {
        "NSAllowsArbitraryLoads": {
            "NSAllowsArbitraryLoads": true
        }
    }
}


我仍然收到相同的“网络请求失败”错误。有人知道解决方法而不弹出吗?

问题是设备上的本地主机没有指向另一台机器上的本地开发服务器。要解决此问题,您应该确保您的测试移动设备和dev服务器位于同一本地网络下,并将localhost更改为dev server机器的ip。

我遇到了完全相同的问题,我使用fetch()将我的数据从本机react应用程序发送到我的php服务器,我使用expo从IOS手机进行模拟,但当我配置了正确的IPV4地址(fetch(http://IPV4 address/…)而不是本地主机时,我收到了与您相同的错误。。。
此外,当我在电脑上模拟web视图并输入fetch(http://localhost/)时,我会收到数据,一切正常。

不认为需要编辑任何配置。您提到您正在使用localhost。您是否使用真实设备进行测试?您的api端点使用的是本地主机还是本地ip?因为设备中的localhost实际上没有指向您的本地dev服务器,我在手机上使用的是expo应用程序,所以没有成功。可以在模拟器上测试,但不知道这是否重要。你怎么知道我能修好它?确实是在使用localhost,这就是问题所在。应用程序正在你的手机上运行,我猜你的本地开发服务器正在你的电脑上运行。你的手机正在使用localhost启动http请求,但它没有指向你的电脑。你应该确保你的手机和电脑在同一个本地网络下,并将localhost更改为你电脑的ip。太棒了,你说得对。我发现我不久前在我的个人电脑上解决了这个问题,但我忘记了,昨天无法访问我的个人电脑。如果你能回答这个问题,我会选择它作为正确答案:)谢谢。补充答案:)