在代码

时间:2015-10-14 08:11:43

标签: ios objective-c iphone swift ios9

我有一个不同公司使用的应用程序。用户首先需要使用始终相同的base-url登录整个Web服务。当他成功登录后,我从webservice获得了一个base-url(带有htttps)。但是这个基本网址对于每家公司来说都是不同的。

现在当我在IOS9中启动我的应用程序并登录并尝试使用不同的base-url调用webservices时,我收到此错误:

Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made., NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, _kCFStreamErrorCodeKey=-9847, NSErrorFailingURLStringKey=https://81.82.219.213:8080/TechAppService/TechAppService.svc//authuser?login=***&password=***

我知道我需要在info.plist中设置NSAppTransportSecurity字典。现在的问题是我不知道如何在代码中设置它。

4 个答案:

答案 0 :(得分:2)

<强>步骤1

选择info.plist,然后点击右键 - &gt;转到Source Code

enter image description here

<强>步骤-2

源代码打开为Key格式,在该键上添加以下键

<key>NSAppTransportSecurity</key>
 <dict>
      <key>NSAllowsArbitraryLoads</key>
     <true/>
 </dict>

你可以看到样本输出

enter image description here

步骤3

它会自动添加到您的plist中,如下所示

enter image description here

答案 1 :(得分:1)

这是因为iOS 9 SDK中很少有变化可以在应用中使用网络。您需要在info.plist文件中添加以下密钥。

Step 1:在您的项目中打开info.plist文件。

Step 2:添加App Transport Security Settings密钥。

Stpe 3:添加子密钥Allow Arbitrary Loads并将值设置为YES

多了解所有细节read apple documentation

enter image description here

答案 2 :(得分:1)

请在 Info.plist 中进行设置。有关详细信息,请参阅给定图像

enter image description here

答案 3 :(得分:1)

$ ./bin/array_stride_1d 12 2

 printing (6 x 2) array

  220  155
  755   51
  427  270
  691  597
  982  995
    4  444

 array[1][1] in (6 x 2) array : 51

$ ./bin/array_stride_1d 12 3

 printing (4 x 3) array

  990  837  473
  153   10  337
  139  940  444
  768  625  457

 array[1][1] in (4 x 3) array : 10

$ ./bin/array_stride_1d 12 4

 printing (3 x 4) array

  617  943  444  396
   38  357  103  441
  646  416   40  586

 array[1][1] in (3 x 4) array : 357

$ ./bin/array_stride_1d 12 6

 printing (2 x 6) array

  364   61  373  723  994  849
  793  332  913  991  999  373

 array[1][1] in (2 x 6) array : 332

将其粘贴到Info.plist的末尾。这将允许所有连接