【问题标题】:Partial Apply forwarder in closure during Alamofire > 4.3 call在 Alamofire > 4.3 通话期间关闭部分应用转发器
【发布时间】:2018-03-19 17:00:12
【问题描述】:

我在 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

(注意:这在 Alamofire 4.3 及之前的版本中运行得非常好,从 4.3+ 开始停止运行)

【问题讨论】:

    标签: ios swift closures alamofire


    【解决方案1】:

    更新: 所以我得到的错误来自 Alamofire,它在某个版本中有一个错误:当远程主机根本没有响应时(例如,当 Alamofire 无法解析主机时)关闭没有正确应用。相反,什么都没有发生,这导致了这个特殊的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-03
      • 2023-02-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多