Метод не возвращает значение, полученное из запроса GET, где переменная res
может быть напечатана в разделе задач, но в конце не возвращается.мое быстрое приложение не возвращает значение словаря
func lookUpTheWord(word:String) -> NSDictionary {
var res = NSDictionary()
let urlString = "https://wordsapiv1.p.mashape.com/words/" + word
if let url = NSURL(string:urlString) {
let request = NSMutableURLRequest(URL: url)
request.HTTPMethod = "GET"
request.addValue("this is a key", forHTTPHeaderField: "X-Mashape-Key")
request.addValue("application/json", forHTTPHeaderField: "Accept")
let task = NSURLSession.sharedSession().dataTaskWithRequest(request) {
data, response, error in
if error != nil {
print("\(error)")
return
}
res = self.toJson(data!)
print(res) //it works here
}
task.resume()
}
return res //res becomes nil
}
Возможный дубликат [Swift: Как вернуть значение в асинхронной функции urlsession] (http://stackoverflow.com/questions/27081062/быстроногих, как-делать-я-возврат-а-значение-в пределах-ан-асинхронно-urlsession-функция) –