gpt4 book ai didi

ios - App Transport Security 阻止 HTTPS

转载 作者:可可西里 更新时间:2023-11-01 05:42:54 26 4
gpt4 key购买 nike

我对 ATS 有疑问。我正在使用 XCode 9.1,我的开发目标是 11.0。我正在使用 react-native 0.49 进行开发

我的程序正在获取具有有效 (google chrome) letsencrypt 证书的 https ( https://www.xxxx.com ) 资源。提取仅在 NSAllowsArbitraryLoads 设置为 true 时有效,设置为 false 时提取被阻止(调试)?

我正在使用临时域 ( https://xxxx.no-ip.org ) 进行一些测试。此域还具有有效的 letsencrypt 证书。在这种情况下,一切正常。

我能看到的两个主机之间的唯一区别是测试域是单域主机,生产主机是多域主机。有人有什么建议吗?

问候,

哈利


调试输出:CFNetwork 诊断 [1:1187] 12:38:08.258 { 失败了:(空) 装载机:{url = https://.... 错误:错误域=kCFErrorDomainCFNetwork 代码=-1200“(空)”用户信息={_kCFStreamPropertySSLClientCertificateState=0,_kCFNetworkCFStreamSSLErrorOriginalValue=-9802,_kCFStreamErrorDomainKey=3,_kCFStreamErrorCodeKey=-9802}

这是我的 info.plist 部分

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<false/>
<key>NSExceptionDomains</key>
<dict>
<key>xxxx.no-ip.org</key>
<dict/>
<key>localhost</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
<key>xxxx.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
</dict> </dict> </dict>

最佳答案

使用 NSExceptionAllowsInsecureHTTPLoads如果您尝试通过 HTTPS 连接,则不应执行任何操作。您的网址 ( https://www.xxxx.com ) 是否有可能将流量重定向到 http://www.xxxx.com

还有其他异常会影响 HTTPS 流量,这些异常将允许不满足 HTTPS 所有要求(例如前向保密、TLS 版本、 key 强度)的 HTTPS 连接。您需要做的是弄清楚它失败的确切原因。

要测试 URL 是否符合 ATS,请使用 nscurl --ats-diagnostics <url> Mac 上的命令。您可以在 this post 中找到有关 ATS 的更多信息,以及如何使用/解释上述 nscurl 命令的结果。 .

此外,您可以通过更改 CFNETWORK_DIAGNOSTICS 来增加日志记录以获取有关失败原因的更多详细信息。升级。您可以找到更多相关信息 here .

关于ios - App Transport Security 阻止 HTTPS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47110781/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com