我正在尝试在 Swift 中编写一个 NSURLSessionDataTask ,但我不知道如何,我有这个 Objective C 方法,这几乎正是我想要在 Swift 中做的事情。
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *task = [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *)response;
if (httpResponse.statusCode != 200) return;
NSDictionary *responseDict = [XMLReader dictionaryForXMLData:data options:XMLReaderOptionsProcessNamespaces error:&error];
NSDictionary *body = responseDict[@"Envelope"][@"Body"];
dispatch_async(dispatch_get_main_queue(), ^{
if (block) block(body, nil);
});
}];
我试了又试,还是想不通!我希望社区可以。这就是我现在用于本节的 swift 代码。:)
var session: NSURLSession = NSURLSession.sharedSession()
var task: NSURLSessionDataTask = session.dataTaskWithURL(request, completionHandler: { (<#NSData!#>, <#NSURLResponse!#>, <#NSError!#>) -> Void in
var httpResponse: NSHTTPURLResponse
httpResponse = NSHTTPURLResponse(response: NSHTTPURLResponse)
})
有任何想法吗?一个解释会很好,我试图在文档中阅读这个,但这有点令人困惑。还。如果这是一个双重职位,请链接我!我试过寻找,但找不到任何接近的东西。