添加NSExceptionDomains到Info.plist:如果确实有少数需要从http://获取资源的情况,可以在Info.plist文件中添加一个 NSAppTransportSecurity键,允许特定域名的http请求。这个如何添加
时间: 2024-12-16 22:22:23 浏览: 11
要在`Info.plist`文件中添加NSAppTransportSecurity例外,你需要做如下操作:
1. 打开你的项目,在Xcode的导航栏上选择项目的根目录,然后找到`Info.plist`文件并打开它。
2. 如果`NSAppTransportSecurity`键不存在,点击左上角的"+",在下拉菜单中选择`key`,然后输入`NSAppTransportSecurity`。
3. 现在你应该能看到`NSAppTransportSecurity`下面有一个`dict`标签。在这个字典里,添加一个新的`key`叫`NSAllowsArbitraryLoadsForMedia`或`NSAllowsArbitraryLoads`,取决于你的需求。如果是针对多媒体资源(比如图片、视频),添加`NSAllowsArbitraryLoadsForMedia`;如果是一般HTTP请求,添加`NSAllowsArbitraryLoads`。
4. 对于这两个新的`key`,其对应的`value`设为`YES`或`true`,表示允许该类型的HTTP请求。
5. 如果你想限制特定域名的HTTP请求,可以创建一个新的`key`,例如`NSExceptionDomains`。这是一个嵌套字典,里面包含你要添加例外的具体域名,格式如下:
```xml
<key>NSExceptionDomains</key>
<dict>
<key>yourdomain.com</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
<!-- 可选:其他允许的协议 -->
<key>NSExceptionMinimumTLSVersion</key>
<string>TLSv1.2</string>
</dict>
</dict>
```
将`yourdomain.com`替换为你需要添加例外的域名。
6. 保存修改后,再次尝试加载HTTP资源,看看问题是否得到解决。
记住,生产环境应尽量使用HTTPS,上述设置仅限于临时测试或者特定情况下的调试。
阅读全文