iOS Swift - NSURLConnection.sendAsynchronousRequest取消请求

时间:2015-05-12 16:18:31

标签: ios swift nsurlconnection cancellation sendasynchronousrequest

如果互联网连接出现问题,我试图取消异步请求。

var connection: NSURLConnection!
self.connection = NSURLConnection.sendAsynchronousRequest(request2, queue: NSOperationQueue.mainQueue())
{

    (response, data, error) in ();
    if(response != nil){
    if let Data: AnyObject! ..... }

这是代码。我试图通过以下方式取消请求:

self.connection.cancel()

但我有一些错误:无法确定类型的值' void'到NSURLConnection类型的值。

1 个答案:

答案 0 :(得分:1)

... framework: ... session: handler_id: ~ ... 是一个不返回任何内容的函数,但您将其分配给sendAsynchronousRequest

您不需要self.connection实例来发送异步请求 - 它是一个类功能,您可以将NSURLConnection和自定义NSURLRequest传递给它NSOperationQueue,可选。

此外,您无法取消通过completionHandlersendSynchronous-发出的请求。您需要制作sendAsynchronousRequest,才能与NSURLSessionTask结合使用。 NSURLSession有一个NSURLSessionTask方法。