Alamofire.AFError.ResponseValidationFailureReason.unacceptableStatusCode(500)

时间:2017-01-18 05:56:49

标签: alamofire

我正在研究Alamofire,我正在尝试向服务器发送请求,如下所示:

select * from table where create_date >= '' AND create_date <= ''

但我经常遇到这样的错误:

  

Alamofire.AFError.ResponseValidationFailureReason.unacceptableStatusCode(500)

当我检查服务器端时,似乎请求的主体是空的 谁能帮我这个?非常感谢!

4 个答案:

答案 0 :(得分:3)

我遇到了同样的问题,我的朋友和我通过更改

中的状态代码解决了这个问题
validate(statusCode: 200..<500)

validate(statusCode: 200..<600)

我是Alamofire的新手,所以我无法解释为什么或如何运作或错误意味着什么。

答案 1 :(得分:1)

对西里尔接受的答案的解释:

HTTP服务器功能通常会返回一个状态代码,用于指示处理请求时发生的情况。 Alamofire可以读取此信息以确定响应是有效还是发生错误。根据服务器的实现方式,您可以告诉Alamofire您认为意味着“有效”响应的状态代码范围,您可以通过将此范围赋予validate()函数来实现。例如,.validate(statusCode: 200..<500)告诉Alamofire,状态代码 200到499 的任何响应都应被视为有效,其他每个代码(包括500)都应无效。

答案 2 :(得分:0)

尝试删除request.validate(状态代码:200 .. <300)

答案 3 :(得分:0)

在我的pod文件中调整了我的alamofire版本,此问题已解决。

尝试使用以下方法将其降级到您的pod文件中:

async