https在android和ios中获取请求阻止 - React Native

时间:2018-04-22 06:51:58

标签: android ios reactjs react-native protocols

我使用React Native构建一个移动应用程序,

因为我使用一个api来获取数据,最初我在http中有一个web api,例如:http://example.com它成功获取android中的数据但不是ios中的数据,

我读了苹果文档然后我发现苹果需要https用于生产应用程序,

所以我决定将我的网络API协议更改为 https ,如下所示:https://example.com,成功更改我的api后,当我点击该网址时,我在网页上得到了回复,但现在当我正在运行我的React Native应用程序,它告诉我网络请求失败

我还在我的React Native fetch请求代码中将我的http更改为https。我不知道问题是什么,这是React Native问题吗?

1 个答案:

答案 0 :(得分:2)

对于iOS来说,

https是不够的。您的SSL证书应默认符合TSL 1.2或主要版本。

您可以覆盖此行为,在info.plist文件中设置支持的最低TSL,如下所示:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <false/>
     <key>NSExceptionDomains</key>
<dict>
    <key>example.com</key>
    <dict>
        <key>NSIncludesSubdomains</key>
        <true/>
        <key>NSExceptionRequiresForwardSecrecy</key>
        <false/>
        <key>NSExceptionMinimumTLSVersion</key>
        <string>TLSv1.0</string>
    </dict>
</dict>