React Native 0.51.0获取HTTPS网络请求失败

时间:2018-01-07 18:09:02

标签: ios react-native fetch react-native-ios

我目前正面临网络请求失败的错误。

这是我的代码:

fetch("https://nextbus.comfortdelgro.com.sg/eventservice.svc/BusStops")
  .then((response) => response.json())
  .then((responseJSON) => {
    console.log("JSON",responseJSON)
  })
  .catch((error) => {
    console.error(error);
  });

我正在构建iOS应用,我编辑了 info.plist 文件

<key>nextbus.comfortdelgro.com.sg/eventservice.svc/BusStops</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <key>NSTemporaryExceptionMinimumTLSVersion</key>
            <string>TLSv1.1</string>
        </dict>

我的网址是HTTPS,所以我不明白为什么我会遇到这个错误。

2 个答案:

答案 0 :(得分:0)

我有同样的问题无法弄明白。我开始使用Axios Library来发出请求。通过使用Axios,您可以删除将http请求的结果传递给JSON方法的中间步骤。 Axios只返回您期望的数据对象

答案 1 :(得分:0)

您的代码没有任何问题。为了向自己证明只需将网址交换为https://jsonplaceholder.typicode.com/posts/1,它就会完美无缺。

问题似乎是由响应的编码问题引起的。 当我在https://jsonformatter.curiousconcept.com/的JSON格式化程序中输入网址时,它会给出以下响应 - Invalid encoding, expecting UTF-8, UTF-16 or UTF-32.

我对字符集的了解不足以建议解决此问题,但希望这有助于从哪里开始寻找!