Apple hat angekündigt, dass NSAllowArbitraryLoads
wird nicht bald funktionieren. Daher ist in iOS 10, ich habe dies in meinem info.plist:App Transport Sicherheitsproblem in iOS 9 und iOS 10
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>myAPIdomain</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
<key>NSAllowsArbitraryLoadsInWebContent</key>
<true/>
</dict>
Das für meine API-Anfrage und Inhalte in UIWebView arbeitet. In iOS9 wird NSAllowsArbitraryLoadsInWebContent
jedoch nicht unterstützt und es wird empfohlen, NSAllowsArbitraryLoads
für iOS 9-Unterstützung einzuschließen. Aber ich denke, das wird meine NSExceptionDomains
Einstellungen überschreiben? Wie kann ich HTTP-Anfragen für meine API und UIWebView auf iOS 9 und iOS 10 ausführen lassen und trotzdem der Apple-Regel folgen?
bearbeiten
für iOS unterstützt 9 und iOS 10:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>myAPIdomain</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
<key>NSAllowsArbitraryLoadsInWebContent</key>
<true/>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
Wenn Sie ältere Version als iOS 10 unterstützen, dann müssen Sie 'NSAllowsArbitraryLoads' verwenden, und ja dies wird auf iOS 9 und 10 gelten. Sie müssen nur in enthalten Ihre Überprüfungsanmerkungen, warum Sie 'NSAllowsArbitraryLoads' benötigen Wenn Sie spezifische Domänen haben, von denen Sie wissen, dass https funktioniert, können Sie eine Ausnahme für diese Domänen hinzufügen, um https – Paulw11
@ Paulw11Thanks für Ihre schnelle Antwort zu aktivieren. Dies bedeutet, dass ich nur "NSAllowsArbitraryLoadsInWebContent" und "NSAllowsArbitraryLoads" zu meiner info.plist hinzufügen muss? – chengsam
ja, das ist richtig – Paulw11