Ios 如何将NSAppTransportSecurity添加到Cordova项目
我在做一个爱奥尼亚·科尔多瓦项目。该应用程序需要配置iOS 9版本的应用程序传输安全例外 有人知道如何将以下配置添加到cordova项目配置文件中吗?(config.xml)Ios 如何将NSAppTransportSecurity添加到Cordova项目,ios,cordova,ionic-framework,Ios,Cordova,Ionic Framework,我在做一个爱奥尼亚·科尔多瓦项目。该应用程序需要配置iOS 9版本的应用程序传输安全例外 有人知道如何将以下配置添加到cordova项目配置文件中吗?(config.xml) NSAppTransportSecurity NSAllowsArbitraryLoads 请注意,我总是使用钩子脚本和plistbuddy来完成这项工作。所以我会把它放在hooks文件夹中,确保它设置为可执行文件权限(755可以): 用你的域名替换“域\到\设置\为\例外”,例如myhost.example.com-我
NSAppTransportSecurity
NSAllowsArbitraryLoads
请注意,我总是使用钩子脚本和plistbuddy来完成这项工作。所以我会把它放在hooks文件夹中,确保它设置为可执行文件权限(755可以): 用你的域名替换“域\到\设置\为\例外”,例如myhost.example.com-我不喜欢在你需要之前将所有域设置为打开状态,因此建议使用白名单方法 然后,为了启动该命令,我在iOS平台部分修改config.xml,如下所示:
...
<platform name="ios">
<hook type="before_build" src="hooks/ios_ats.sh" />
...
。。。
...
我在Github上写了一个完整的示例项目,展示了这一点,链接自文章,您可以从中获得适当的脚本。最简单的解决方案可能是使用插件。看看 您可以在plugin.xml文件中看到它如何修改plist值
<platform name="ios">
<config-file target="*-Info.plist" parent="NSAppTransportSecurity">
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
</config-file>
</platform>
NSAllowsArbitraryLoads
引用此选项时,应添加
<access origin='*' allows-arbitrary-loads-in-media='true' allows-arbitrary-loads-in-web-content='true' allows-local-networking='true' />
您可以直接使用
config.xml
中的edit config
标记来更新app Info.plist文件中的属性
这与类似,但允许对应用程序的配置进行更全面的控制
对于这种特殊情况,您可以包括以下内容(毫不奇怪,将${APP_NAME}
替换为您的应用程序名称):
NSAllowsArbitraryLoads
检查这个答案:它不是应该在电话上运行吗(不是服务器)?是的,它在电话上。使用钩子脚本在脚本化的cordova build命令期间进行设置。这里没有服务器配置,不确定是什么让您认为有。
cordova plugin add cordova-plugin-transport-security --save
<platform name="ios">
<config-file target="*-Info.plist" parent="NSAppTransportSecurity">
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
</config-file>
</platform>
<access origin='*' allows-arbitrary-loads-in-media='true' allows-arbitrary-loads-in-web-content='true' allows-local-networking='true' />