问题描述
Alamofire.request(.GET,getUrl( mystuff))。validate()
- validate()的用途是什么
方法?如何使用它来验证服务器连接问题?
Alamofire.request(.GET, getUrl("mystuff")).validate()
- what is the use of the validate()
method? How can I use it to validate server connection issues?
推荐答案
作为提及, validate()
不带参数,检查状态码是否为2xx,以及标题的可选的 Accept
部分是否与响应的 Content-键入
。
As the documentation on GitHub mentions, validate()
without parameters checks if the status code is 2xx and whether the optionally provided Accept
part of the header matches the response's Content-Type
.
示例:
Alamofire.request("https://example.com/get").validate().responseJSON { response in
switch response.result {
case .success:
print("Validation Successful")
case .failure(let error):
print(error.localizedDescription)
}
}
您可以为自定义验证选项提供 statusCode
和 contentType
参数
示例:
Alamofire.request("https://example.com/get")
.validate(statusCode: 200..<300)
.validate(contentType: ["application/json", "application/xml"])
.responseData { response in
[...]
}
如果要手动检查状态代码,可以使用 response.response?.statusCode
访问它。
If you want to check the status code manually, you can access it with response.response?.statusCode
.
示例:
switch response.response?.statusCode {
case 200?: print("Success")
case 418?: print("I'm a teapot")
default: return
}
这篇关于Alamofire.request中validate()方法的用途是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!