我有一个问题,我在Alamofire中真的不明白,可能在这里缺少Swift知识。
我的应用程序没有任何故障,一切都在运行。它只是忽略了某些关闭。而不是在调试器Xcode中的闭包内找到我的数据,而是向我展示:
0x0000000106eb1b30 AGKitCore partial apply forwarder for closure #1
(Alamofire.DataResponse<Swift.String>) -> () in static
AGKitCore.AGKit.add(document: Foundation.Data, withFileType:
AGKitCore.AGKit.documentType, withIdentifier:
Swift.Optional<Swift.String>, completionHandler: (Swift.Optional<Swift.Int>) -> ()) -> ()
要添加更多上下文,AGKit会静态调用:
AGKit.add(document: someData, withFileType: .jpeg, withIdentifier: self.cart_local_id) { statusCode in ...closure } ```
和功能:
AGKit.sharedInstance.core.api.upload(multipartFormData: { form in
form.append(document, withName: "image", fileName: identifierForDocument, mimeType: "")
}, with: Router.sendDocument(identifier: identifierForDocument)) { (results) in
switch results {
case .success(request: let uploadDocumentRequest, streamingFromDisk: _, streamFileURL: _):
//Pass here
uploadDocumentRequest.responseString(completionHandler: { responseString in
completionHandler(responseString.response!.statusCode) //this is never called
})
break
case .failure(let error): //No failure too
print(error.localizedDescription)
completionHandler(-1)
break
}
}
那我该如何管理这个闭包用例? 谢谢:D
(N.B:这在Alamofire 4.3中非常好用,之前已经停止了4.3+以上的工作)
答案 0 :(得分:1)
更新: 所以我得到的错误来自Alamofire,它在某个版本中有一个错误:当一个远程主机根本没有响应时(例如当Alamofire无法解析主机时),关闭没有正确应用。相反,没有任何事情发生,导致这个特殊的问题。