这个问题在这里已有答案:
我试图将我的Alamofire请求中的数据分配给参数字典,但它总是显示为nil。
var params = SomeParams()
params.addUserIds([currentUserID, partnerUserID])
params.name = name
Alamofire.request(url!, method: .get)
.validate()
.responseData(completionHandler: { (responseData) in
DispatchQueue.main.async {
params.coverImage = responseData.data!
}
})
// NIL RESPONSE
print(params)
我知道这是因为Alamofire调用是在后台完成的,所以我试图调用主线程并分配它。但它仍然无效。有任何想法吗?
您需要在completionHandler
中执行工作(如打印)。不需要DispatchQueue
var params = SomeParams()
params.addUserIds([currentUserID, partnerUserID])
params.name = name
Alamofire.request(url!, method: .get)
.validate()
.responseData(completionHandler: { (responseData) in
params.coverImage = responseData.data!
print(params)
})