https请求适用于Chrome但不适用于iOS应用

时间:2016-01-21 01:13:28

标签: ios swift google-chrome http https

我正在尝试使用从服务器请求数据的swift制作iOS应用程序。服务器在https上运行,当使用chrome访问时,它工作正常。但是当我尝试iOS请求时,它给出了一个错误“NSURLSession / NSURLConnection HTTP加载失败(kCFStreamErrorDomainSSL,-9802)”

我尝试了有关允许不安全域的所有答案,但这是一个安全域(https而不是http)。

我的iOS代码是:

let url = NSURL(string: "https://subdomain.mydomain.com/homescreen.php?variablex=something")        
let task = NSURLSession.sharedSession().dataTaskWithURL(url!) {(data, response, error) in
    print(NSString(data: data!, encoding: NSUTF8StringEncoding)as! String)
    self.embedLink = NSString(data: data!, encoding: NSUTF8StringEncoding)as! String

当我运行应用程序并在模拟器中打开它时,当我点击其中包含此代码的屏幕并在第三行显示"EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)"时 - as! String)之后

建议非常感谢!

1 个答案:

答案 0 :(得分:0)

对于那些感兴趣的人,我解决了这个问题。

事实证明服务器上缺少一个链文件,虽然在使用chrome或firefox这样的浏览器时看起来很好,但iOS在他们的要求中更具体。

我使用https://certificatechain.io/来生成这个crt文件,因为它把它放在服务器中就完美了。