如何从服务器获取 AFNetworking 中的完整响应字符串?

Posted

技术标签:

【中文标题】如何从服务器获取 AFNetworking 中的完整响应字符串?【英文标题】:How to get full response string in AFNetworking from server? 【发布时间】:2017-04-22 07:21:54 【问题描述】:

我正在使用带有session manager 的AFNetworking 3.0,如下所示:

    sessionManager = AFHTTPSessionManager(baseURL: baseURL)
    sessionManager?.post(url, parameters: parameters, progress: nil,
                         success: (task: URLSessionDataTask, responseObject: Any) in
                           print(task?.response)
                         , failure: (task: URLSessionDataTask?, error: Error) in
                         print(task?.response)
    )

当我打印 task.response 对象时,我只得到标题。如何从服务器获取完整的响应字符串和错误(如果有)?

【问题讨论】:

使用 responseObject.response 【参考方案1】:

你可以试试这个

    print(responseObject.response)
    print(responseObject.response.request)  // original URL request
    print(responseObject.response.response) // URL response
    print(responseObject.response.data)     // server data
    print(responseObject.response.result)   // result of response serialization

【讨论】:

你的response是什么类型的?不太清楚你指的是哪一个。我的问题中的task?.response 类型为URLResponse 是的task.response 如果你得到想要的输出,请告诉我 developer.apple.com/reference/foundation/urlresponse 这些属性都不可用.. 您发送的链接是原生 url 响应。 AFNetworking 有这些价值观。我正在使用它。

以上是关于如何从服务器获取 AFNetworking 中的完整响应字符串?的主要内容,如果未能解决你的问题,请参考以下文章

如何在afnetworking中的AFHTTPRequestOperationManager请求中获得返回

AFNetworking 2.0 从故障块中的代码 400 获取 JSON

通过 AFNetworking 从服务器获取 Json 响应

如何从 AFNETWORKING POST 获取参数

如何从 AFnetworking 2.0 操作/NSURLSessioNDataTask 获取原始 JSON 响应?

在故障块 AFNetworking 3.0 上获取 responseObject