如何从阿拉莫火中返回价值我正在通过一个API调用url,该API是我使用Swive创建的,如下所示:class API {
let apiEndPoint = "endpoint"
let apiUrl:String!
let consumerKey:String!
let consumerSecret:String!
var returnData = [:]
init(){
self.apiUrl = "https://myurl.com/"
self.consumerKey = "my consumer key"
self.consumerSecret = "my consumer secret"
}
func getOrders() -> NSDictionary{
return makeCall("orders")
}
func makeCall(section:String) -> NSDictionary{
let params = ["consumer_key":"key", "consumer_secret":"secret"]
Alamofire.request(.GET, "\(self.apiUrl)/\(self.apiEndPoint + section)", parameters: params)
.authenticate(user: self.consumerKey, password: self.consumerSecret)
.responseJSON { (request, response, data, error) -> Void in
println("error \(request)")
self.returnData = data! as NSDictionary
}
return self.returnData }}我在我的UITableViewController使用SwiftyJSON库填充表。但是我的returnData从API始终是空的。AlomoFire调用没有问题,因为我可以成功地检索值。我的问题是我应该如何携带这个data转到我的桌景控制器?var api = API()api.getOrders()println(api.returnData) // returnData is empty
3 回答
茅侃侃
TA贡献1842条经验 获得超21个赞
AlamoFire中的网络是异步完成的。对于不熟悉异步编程概念的程序员来说,异步编程可能会让他们感到沮丧,但是这样做是有很好的理由的。
而不是阻止执行以等待来自服务器的响应,而是指定一个回调来处理接收到的响应。 请求的结果仅在响应处理程序的作用域中可用。任何取决于从服务器接收的响应或数据的执行都必须在处理程序中完成。.
- 3 回答
- 0 关注
- 421 浏览
添加回答
举报
0/150
提交
取消