Closed. This question needs details or clarity。它当前不接受答案。












想要改善这个问题吗?添加详细信息,并通过editing this post来解决问题。

1年前关闭。



Improve this question




有人能帮我吗?我找不到关于补全语法的好例子。
var url : NSURL = NSURL.URLWithString("https://itunes.apple.com/search?term=\(searchTerm)&media=software")
var request: NSURLRequest = NSURLRequest(URL:url)
let config = NSURLSessionConfiguration.defaultSessionConfiguration()
let session = NSURLSession.sessionWithConfiguration(config)

NSURLSessionDataTask(session.dataTaskWithRequest(request, completionHandler: ((NSData!, NSURLResponse!, NSError!) -> Void)?)

最佳答案

不清楚您要问的是,但我注意到您在代码中存在几个错误:

  • 您应该使用session创建您的NSURLSession(configuration: config)
  • session.dataTaskWithRequest返回一个NSURLSessionDataTask,因此无需将其包装在NSURLSessionDataTask()中(也就是实例化一个新的NSURLSessionDataTask对象)。
  • 完成处理程序是一个闭包,下面是创建该特定Clousure的方法:
    {(data : NSData!, response : NSURLResponse!, error : NSError!) in
    
        // your code
    
    }
    

  • 这是更新的代码:
    let url = NSURL(string: "https://itunes.apple.com/search?term=\(searchTerm)&media=software")
    let request = NSURLRequest(URL: url)
    let config = NSURLSessionConfiguration.defaultSessionConfiguration()
    let session = NSURLSession(configuration: config)
    
    let task = session.dataTaskWithRequest(request, completionHandler: {(data, response, error) in
    
        // notice that I can omit the types of data, response and error
    
        // your code
    
    });
    
    // do whatever you need with the task e.g. run
    task.resume()
    

    关于ios - 如何在Swift中使用NSURLSessionDataTask ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24040893/

    10-15 19:07