如果使用 response
,您可以检查 NSHTTPURLResponse
参数:
Alamofire.request(urlString, method: .post, parameters: registrationModel.getParentCandidateDictionary(), encoding: JSONEncoding.default)
.response { response in
if response.response?.statusCode == 409 {
}
}
默认情况下,4xx状态码不被视为错误,但您可以使用validate
将其视为错误,然后将其纳入到更广泛的错误处理中:
Alamofire.request(urlString, method: .post, parameters: registrationModel.getParentCandidateDictionary(), encoding: JSONEncoding.default)
.validate()
.response() { response in
guard response.error == nil else {
if response.response?.statusCode == 409 {
}
return
}
}
或者,如果使用 responseJSON
:
Alamofire.request(urlString, method: .post, parameters: registrationModel.getParentCandidateDictionary(), encoding: JSONEncoding.default)
.validate()
.responseJSON() { response in
switch response.result {
case .failure:
if let statusCode = response.response?.statusCode {
if statusCode == 409 {
}
}
case .success(let value):
print(value)
}
}
上面是 Alamofire 4.x。查看此答案的以前版本,请参见 Alamofire 的早期版本。