用于React Native的`http` polyfill

时间:2017-06-05 20:52:11

标签: javascript node.js reactjs react-native

尝试使用http移植基于一堆节点模块的应用。

除了重写fetch的库吗?

之外,是否有解决方案?

1 个答案:

答案 0 :(得分:-1)

http只是iOS 9+上的一个问题。你可以像这样http - React Native fetch() Network Request Failed

以下是文档中提到的内容 - http://facebook.github.io/react-native/releases/0.44/docs/running-on-device.html#app-transport-security

转到您的info.plist文件:/Users/Noitidart/Documents/YOUR_PROJECT_NAME/ios/YOUR_PROJ_NAME/Info.plist

然后找到NSExceptionDomains。您会看到localhost已经存在。您可以在此处添加其他域。这就是允许bing为http:

的样子
<key>NSAppTransportSecurity</key>
<!--See http://ste.vn/2015/06/10/configuring-app-transport-security-ios-9-osx-10-11/ -->
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>localhost</key>
        <dict>
            <key>NSExceptionAllowsInsecureHTTPLoads</key>
            <true/>
        </dict>
        <key>bing.com</key>
        <dict>
            <key>NSExceptionAllowsInsecureHTTPLoads</key>
            <true/>
        </dict>
    </dict>
</dict>

您可以通过设置允许所有http:

<key>NSAllowsArbitraryLoads</key>
<true/>

Per - https://stackoverflow.com/a/38427829/1828637

在Android上,http不是问题。