0
我试图做一个https请求到我的网站API,我一直在为它工作2天,但没有找到一个解决方案,我所有的需求(这是在iOS 10)。我的https证书未签名(https://api.example.de/v1/something),令牌为'授权'标头。那么我想下载JSON文件并解析它。这里是我的代码:如何使用带有未签名证书Swift 3的标头进行HTTPS GET请求?
func testDownload(token: String){
let url = URL(string: "https://api.example.de/v1/blabla")
var request = URLRequest(url: url!)
request.httpMethod = "GET"
request.addValue("Token \(token)", forHTTPHeaderField: "Authorization")
let session = URLSession.shared
let task = session.dataTask(with: request, completionHandler: { (data, response, error) -> Void in
do{
let json = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! [String: AnyObject]
let parsed_data = json["data"] as? [[String: AnyObject]] ?? []
let firstName = parsed_data[0]["firstName"] as? String
print("Firstname for first item is: \(firstName)")
self.employeeName.text = firstName
} catch let error as NSError{
print("Sorry there is an Error: \(error)")
}
})
task.resume()
我得到这个错误,这似乎不相关的:
2017-03-03 10:16:52.636 44 App[1763:34479] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9843)
fatal error: unexpectedly found nil while unwrapping an Optional value
BTW,我已经改变了的info.plist像This Screenshot 还测试了这段代码在两个不同的API(一个带有认证的SSL,一个带有正常的HTTP协议)并分析数据。
我在做什么错了?请帮我