我試圖用斯威夫特3.從雅虎獲得股票報價雖然對斯威夫特2一些體面的教程,沒有人似乎很好地轉化爲斯威夫特3.SWIFT 3的URLRequest session.dataTask不點火
的我現在的問題是,在下面的代碼中,session.dataTask從不被調用。 print語句永遠不會觸發,其中的代碼不起作用。
我已檢查請求變量看起來不錯,並且該網址已在雅虎開發人員網站上進行了測試。
所以我想我必須有dataTask的語法錯誤或有一個錯誤,所以是完全跳過。
有什麼想法?
urlString = "http://query.yahooapis.com/v1/public/yql?q=select * from yahoo.finance.quotes where symbol IN ('APL')"
//let urlNSS : NSString = urlString as NSString
let urlStr : String = urlString.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!
let url : URL = URL(string: urlStr as String)!
let request = URLRequest(url: url)
let session = URLSession.shared
let config = URLSessionConfiguration.default
let task = session.dataTask(with: request, completionHandler: {(data, response, error) -> Void in
print("in the task")
..
..
)}
task.resume()
這是一個命令行程序嗎?然後你需要一個運行循環:http://stackoverflow.com/questions/25126471/cfrunloop-in-swift-command-line-program。 - 還是一個遊樂場?然後這應該有所幫助:http://stackoverflow.com/questions/24058336/how-do-i-run-asynchronous-callbacks-in-playground。 –