React Native入坑记——模拟器访问外网

背景

即将上线的React Native项目,一直是用fetch localhost来访问本地后台的数据的。老板突然想在手机上看看项目运行效果。于是我搭建了外网,把fetch URL指向外网IP,得到Error.后台断点,根本没进来,也就是说React Native fetch根本没有访问到后台。
于是降级了React Native版本,又或者修改fetch为127.0.0.1,也不行!

最终在React Native Issue 找到ATS.

ATS

ATS 是一个iOS 9增加的安全策略,默认只允许HTTPS请求.于是React Native应用的HTTP请求会被阻止。
你需要移除Info.plist里的NSAllowsArbitraryLoads属性。需要了解更多有关如何配置ATS,请移步ATS配置.

代码

配置NSAllowsArbitraryLoads:true,访问外网成功!


Paste_Image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容