因此,当请求失败时,我正在使用的 API 有时会在响应正文中发送错误消息。这位于response.data
.有时是 JSON,有时是字符串。我正在使用 validate
方法如此 result.value
是 nil
发生错误时。
有没有办法让 Alamofire 将数据从 NSData 序列化为字符串或将 JSON 序列化为 [ String : AnyObject ]
如果响应成功会怎么样?
我想继续使用验证方法。
编辑:
这是我在 Alamofire GitHub 项目上发起的功能请求的链接。
https://github.com/Alamofire/Alamofire/issues/1459
最佳答案
目前没有。我现在实际上正在 Alamofire 4 中研究这个功能。在 Alamofire 3 中,您必须解析 response.data
如果您收到该验证错误,请自行处理。在 Alamofire 4 中,您至少可以访问 response.data
在验证时以及能够自定义 Error
这是通过验证生成的。
最有可能的最终解决方案是,如果您知道将出现错误(检查响应状态代码和 header ),则能够检查验证。然后根据错误的类型,您可以解析 response.data
从服务器中提取错误消息并从验证中抛出非常特定的错误。这很可能是新系统所允许的。这样你就可以识别 OAuth2
在验证中访问 token 错误并抛出您自己的自定义错误,而不必使用复杂的响应序列化系统来执行此操作。
关于验证失败时 Alamofire 解析响应数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39323247/