验证失败时Alamofire Parse响应数据

Tob*_*ias 5 alamofire

因此,我正在使用的API有时会在请求失败时在响应正文中发送错误消息.它位于response.data.有时它是JSON,有时它是一个字符串.我使用的validate方法,以便result.valuenil发生错误时.

有没有办法让Alamofire将数据从NSData序列化为字符串,或者让JSON [ String : AnyObject ]像响应成功一样?

我想继续使用validate方法.

编辑:这是我在Alamofire GitHub项目上开始的功能请求的链接.

https://github.com/Alamofire/Alamofire/issues/1459

cno*_*oon 6

目前没有。我现在实际上正在 Alamofire 4 中研究这个功能。在 Alamofire 3 中,response.data如果您收到验证错误,则必须自己解析。在 Alamofire 4 中,您至少可以response.data在验证时访问并且能够自定义Error验证生成的 。

最有可能的最终解决方案是,如果您知道将出现错误(检查响应状态代码和标头),则能够检查验证。然后根据错误类型,您可以解析response.data从服务器中提取错误消息并从验证中抛出非常特定的错误。这很可能是新系统所允许的。通过这种方式,您可以OAuth2在验证中正确识别访问令牌错误并抛出您自己的自定义错误,而不必使用复杂的响应序列化系统来执行此操作。