【发布时间】:2014-09-28 07:02:16
【问题描述】:
我正在对服务器进行 API 调用。我正在利用 Alamofire 来处理这个问题。我正在尝试创建一个函数,该函数使用 Alamofire 的 GET 函数返回一个基于自定义类的对象,该类包含此 GET 函数提供的各种输出。
我不清楚该怎么做。
这是我的自定义类,它将包含有关响应的详细信息:
import Foundation
class ResponsePackage {
var success = false
var response: AnyObject? = nil
var error: NSError? = nil
}
在另一个类中,我有以下功能:
func get(apiEndPoint: NSString) -> ResponsePackage {
let responsePackage = ResponsePackage()
Alamofire
.request(.GET, apiEndPoint)
.responseJSON {(request, response, JSON, error) in
responsePackage.response = JSON
responsePackage.success = true
responsePackage.error = error
}
return responsePackage
}
这将返回nil,因为在执行return 之前对服务器的调用尚未完成。我知道我应该能够使用闭包来做到这一点,但我不确定如何构造它。
【问题讨论】: