【发布时间】:2017-02-26 08:35:45
【问题描述】:
我正在编写一个简单的应用程序来从服务器获取数据,并且我已经使用 Swift3 使用 Alamofire 实现了 GET 请求。 我的 Alamofire GET 请求调用如下,
func networkRequest(completed: @escaping DownloadComplete) {
Alamofire.request("https://api.waqi.info/feed/shanghai/?token=demo").responseJSON { response in
let result = response.result
print(response.description)
if let dict = result.value as? Dictionary<String, AnyObject> {
if let status = dict["status"] as? String {
self._status = status
print(self._status)
}
completed()
}
}
我在数据模型文件下使用了如下类型别名,
typealias DownloadComplete = () -> ()
当我运行它时,我在 Xcode 8 的控制台中没有得到任何输出,它仍然是空白的。我无法弄清楚我的代码有什么问题。
【问题讨论】:
-
我已经运行了代码,一切正常,控制台输出正确。尝试清理项目。
-
我确实这样做了,但在这种特殊情况下,它根本不起作用。我什至重新安装了 pod,我在模拟器和手机上都卸载了该应用程序..再次安装。 Xcode 控制台只是保持空白。我连接的 UI 标签也保持空白。
-
您是在应用程序还是命令行脚本中执行此操作?如果是命令行,可能需要调用
dispatchMain()来开始 libdispatch 运行循环。否则,您的程序将在请求完成之前退出。 -
是的,这是一个范围界定问题。
标签: json swift xcode alamofire