如何在 swift 中获得响应 JSON
how to get the response JSON in swift
我的 Alamofire post 请求得到了回复。我想从响应中获取状态代码。
这里的代码:
case .success(let upload, _, _):
upload.responseJSON { response in
print(response.result.value!)
}
响应如下:
响应结果的value
属性是字典。您可以像这样提取状态:
let json = response.result.value as? [String: Any]
if let status = json?["status"] as? Int {
print(status)
}
在具有 Codable 结构的 Alamofire 5 中使用 responseDecodable
将 responseJSON 替换为 responseDecodable。
.responseDecodable { (response: AFDataResponse<ProfileModel>) in
switch response.result {
case .success(let profileModel):
switch profileModel.status {
case 200:
print("success")
case 101:
print("sessionExpire")
default:
print("default")
}
case .failure(let error):
print("failure")
}
}
个人资料模型
struct ProfileModel: Codable {
let status: Int
let type: String
let data: ProfileDataModel
}
struct ProfileDataModel: Codable {
let ImagePath: String
let ThumbImagePath: String
}
我的 Alamofire post 请求得到了回复。我想从响应中获取状态代码。 这里的代码:
case .success(let upload, _, _):
upload.responseJSON { response in
print(response.result.value!)
}
响应如下:
响应结果的value
属性是字典。您可以像这样提取状态:
let json = response.result.value as? [String: Any]
if let status = json?["status"] as? Int {
print(status)
}
在具有 Codable 结构的 Alamofire 5 中使用 responseDecodable
将 responseJSON 替换为 responseDecodable。.responseDecodable { (response: AFDataResponse<ProfileModel>) in
switch response.result {
case .success(let profileModel):
switch profileModel.status {
case 200:
print("success")
case 101:
print("sessionExpire")
default:
print("default")
}
case .failure(let error):
print("failure")
}
}
个人资料模型
struct ProfileModel: Codable {
let status: Int
let type: String
let data: ProfileDataModel
}
struct ProfileDataModel: Codable {
let ImagePath: String
let ThumbImagePath: String
}