我尝试通过Nativescript上的axios调用本地自签名的https域,但始终会出现“请求失败,状态码为空”的错误。我发现我需要添加以下代码段,以允许iOS应用程序使用不安全的URL。
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key><true/>
</dict>
我再次使用tns platform clean ios
来构建应用程序,但仍然会出现相同的错误。我可以从单独的本地Vue项目或Postman访问端点。我该如何解决?
p.s:如果我将URL公开打开,它可以工作,但是问题是我依赖于另一个API,并且只能在本地工作。因此,我必须以某种方式在本地工作。
答案 0 :(得分:1)
我必须在iOS模拟器本身上安装根证书。我将Laravel的Valet用于API,因此将Valet的CA文件夹中的LaravelValetCASelfSigned.pem
文件拖放到模拟器中并安装了它。然后在“常规/证书信任设置”中将其启用,并且可以正常工作。