我试图按如下所示从Xcode 7进行异步调用,但最终看到此错误“ NSURLErrorDomain”-代码:18446744073709550594当我在Xcode 6中使用该代码时,此代码很好。
var task = NSURLSession.sharedSession().dataTaskWithURL(url!, completionHandler: { (var data, response, error) -> Void in if(response != nil) { if (isJSONP){ if let prefixData = "(".dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false) { var prefixRange = data!.rangeOfData(prefixData,options:NSDataSearchOptions(), range: NSMakeRange(0, data!.length)) if let suffixData = ")".dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false) { var suffixRange = data!.rangeOfData(suffixData, options: NSDataSearchOptions(), range: NSMakeRange(0, data!.length)) var jsonRange = NSMakeRange(prefixRange.location + 1, data!.length - prefixRange.location - 3 - suffixRange.length) data = data!.subdataWithRange(jsonRange) json_str = NSString(data: data!, encoding: NSUTF8StringEncoding)! // println(json_str) } } } do { let jsonData:AnyObject? = try NSJSONSerialization.JSONObjectWithData(data!, options: .MutableContainers) callback(jsonData: jsonData) } catch { print("JSONData not serialized properly or no data exists correctly") } }// else results not found properly/ trouble accessing server. please try again later else { var alert = UIAlertController(title: "Alert", message: "Trouble accessing server. Please try again later", preferredStyle: UIAlertControllerStyle.Alert) alert.addAction(UIAlertAction(title: "Close", style: UIAlertActionStyle.Default, handler: nil)) self.presentViewController(alert, animated: true, completion: nil) } }) task.resume()
这是我使用的代码。我既没有看到数据,也没有回应。我尝试使用其他应用程序访问相同的URL,并且响应正确。我在任何地方都看不到任何文档,因此请在此处发布。任何帮助,将不胜感激。
谢谢
尼基尔
似乎是一个错误,我通过将所有请求都保留在https下,来解决此问题,尽我所能击中ios9.0和9.0.1,尽管您需要允许url异常,如Apple文档在Info.plist中建议的那样
参考 https://developer.apple.com/library/prerelease/ios/technotes/App- Transport-Security- Technote/