根据以下错误消息,我需要在info.plist中设置什么来启用HTTP模式?
传输安全性已阻止明文HTTP(HTTP://)资源因为它是不安全的。可以通过以下方式配置临时异常应用程序的Info.plist文件。
假设我的域名是example.com。
根据以下错误消息,我需要在info.plist中设置什么来启用HTTP模式?
传输安全性已阻止明文HTTP(HTTP://)资源因为它是不安全的。可以通过以下方式配置临时异常应用程序的Info.plist文件。
假设我的域名是example.com。
当前回答
转到您的Info.plist
右键单击空白区域,然后单击“添加行”将密钥名称写为NSAppTransportSecurity,在其下选择例外域,将新项目添加到此写下需要访问的域名将域类型从字符串更改为字典,添加新项NSTemporaryExceptionAllowsInsecureHTTPLoads,这将是一个具有真值的布尔值。
其他回答
Use:
在类型为Dictionary的plist文件中添加新项NSAppTransportSecurity,然后在类型为Boolean的字典中添加子项NSAllowsArbitraryLoads,并设置bool值YES。这对我有用。
转到您的Info.plist
右键单击空白区域,然后单击“添加行”将密钥名称写为NSAppTransportSecurity,在其下选择例外域,将新项目添加到此写下需要访问的域名将域类型从字符串更改为字典,添加新项NSTemporaryExceptionAllowsInsecureHTTPLoads,这将是一个具有真值的布尔值。
对于Cordova,如果您想将其添加到ios.json中,请执行以下操作:
"NSAppTransportSecurity": [
{
"xml": "<dict><key>NSAllowsArbitraryLoads</key><true /></dict>"
}
]
并且它应该位于:
"*-Info.plist": {
"parents": {
}
}
使用NSExceptionDomains可能不会同时应用效果,因为目标站点可能会通过http从外部域加载资源(例如js文件)。它也可以通过将这些外部域添加到NSExceptionDomains来解决。
若要检查哪些资源无法加载,请尝试使用远程调试。这里有一个教程:http://geeklearning.io/apache-cordova-and-remote-debugging-on-ios/
以下是直观的设置: