0

我正在创建一个概览,需要从 API 加载一些数据。我编写了以下代码,但它不允许我在 Glance 控制器中异步或同步请求数据。

let url = NSURL(string: "http://api.icndb.com/jokes/random")
let request = NSURLRequest(URL: url!)
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()) {(response, data, error) in
    print(NSString(data: data!, encoding: NSUTF8StringEncoding)!)
}

错误发生在NSURLConnection.sendAsynchronousRequest并说sendAsynchronousRequest(_:queue:completionHandler:) is unavailable。我记得在某处读到过您不应该一目了然地加载数据,如果是这种情况,每次出现一目了然时我应该如何加载数据?

我的问题是:

如何在 Apple Watch Glance 中通过 HTTP 加载数据?并且如果无法一目了然地加载 HTTP 数据,我该怎么做呢?

4

1 回答 1

2

NSURLConnection应该可以工作,但由于它已被弃用,我建议使用它NSURLSession

let task = NSURLSession.sharedSession().dataTaskWithRequest(request) { (data, response, error) -> Void in
    // handle the response
}
task.resume()

调用它的好地方是awakeWithContext您的glances 界面控制器的方法。我已经做到了,一目了然。

于 2015-12-17T23:04:25.227 回答