如何使用 AFHTTPSessionManager 访问 422 上的响应正文?

Posted

技术标签:

【中文标题】如何使用 AFHTTPSessionManager 访问 422 上的响应正文?【英文标题】:How can I access the response body on a 422 with AFHTTPSessionManager? 【发布时间】:2015-05-27 15:48:03 【问题描述】:

文档中我将 AFHTTPSessionManager 子类化为 encouraged。当我做一个 POST 时,像这样:

[[ABHTTPSessionManager sharedManager] POST:@"/api/foo" parameters:@@"foo": @"bar" success:^(NSURLSessionDataTask *task, id responseObject) 
    // handle success
 failure:^(NSURLSessionDataTask *task, NSError *error) 
    // handle failure
];

在失败块中,我想访问响应的正文。只有write a custom response serializer可以这样做吗?

【问题讨论】:

【参考方案1】:

经过更多的挖掘,AFNetworking 的创建者给出的明确的answer 是,是的,创建自定义响应序列化程序是正确的方法。 (虽然这已经快两年了)。

编辑

不!无需子类。我使用了here 概述的方法。这个问题可能应该作为重复关闭。

【讨论】:

以上是关于如何使用 AFHTTPSessionManager 访问 422 上的响应正文?的主要内容,如果未能解决你的问题,请参考以下文章

如何在使用 AFHTTPSessionManager 发送 POST 请求时向参数发送空白数据

如何在 AFHTTPSessionManager 中添加原始正文?

如何在 AFHTTPSessionManager 请求中添加原始正文?

AFHTTPSessionManager 子类:带有正文的发布 API。

AFNetworking 2.0 - 如何从子类 AFHTTPSessionManager 成功将响应传递给另一个类

快速使用 AFHTTPSessionManager