2017-09-19 63 views
0

在我的XCTests中,我连接到http(不是https)服务器。这在我的产品应用程序中不会发生。有没有办法,我只能将此例外:ATS(应用程序传输安全)仅用于XCTests的例外

<key>NSAppTransportSecurity</key> 
<dict> 
    <key>NSExceptionDomains</key> 
    <dict> 
     <key>echo.jsontest.com</key> 
     <dict> 
      <key>NSExceptionAllowsInsecureHTTPLoads</key> 
      <true/> 
     </dict> 
    </dict> 
</dict> 

的测试,而不是主要的应用程序?

我已经试过把这个放在Info.plist中进行测试,但是确实会生成,但是不会提供异常。

回答

0

您需要添加NSIncludesSubdomains密钥并将其设置为true。

<key>NSAppTransportSecurity</key> 
    <dict> 
     <key>NSAllowsArbitraryLoads</key> 
     <false/> 
     <key>NSExceptionDomains</key> 
     <dict> 
      <key>echo.jsontest.com</key> 
      <dict> 
       <key>NSExceptionAllowsInsecureHTTPLoads</key> 
       <true/> 
       <key>NSIncludesSubdomains</key> 
       <true/> 
      </dict> 
     </dict> 
    </dict> 
+0

如果我用你的价值观进行测试的.plist或者,如果我只是NSIncludesSubdomains部件添加到我的测试的.plist,这是行不通的。我没有得到例外。 –

+0

它需要添加到应用程序的Info.plist中,因为即使在测试下,它也会发出请求。 – Oletha

+0

这不是我的问题。我的问题是:只适用于XCTest的。如果我将该例外置于应用程序的.plist中,则不会仅用于XCTest。 –

相关问题