【发布时间】:2021-08-10 21:49:16
【问题描述】:
我尝试使用 Alamofire 发布 mysql 数据库并成功,但我的响应似乎不是 json,我想将响应值传递给模型结构。我试过这段代码。哪里错了? 如果您能提供帮助,我将不胜感激。
func register(registerModel:RegisterResponse,completion:@escaping (RegisterModel?)->() ){
let parameters: [String: Any] =
[
"email": "\(registerModel.email)",
"password": "\(registerModel.password)",
"first_name": "\(registerModel.first_name)",
"last_name": "\(registerModel.last_name)",
]
AF.request(registerUrl,method: .post,parameters: parameters,encoding: URLEncoding.httpBody,headers: nil).responseJSON(){ response in
//debugPrint(response)
switch response.result{
case .success(let data):
if response.data != nil {
print(data)
completion(data as? RegisterModel)
}
case .failure(let err):
print(err.localizedDescription)
}
}
}
输出:
{
result = "account already exists";
tf = 0;
verificationCode = "<null>";
}
【问题讨论】:
-
@JoakimDanielson 不,我看看这个问题。我想传递值我自己的班级,这个问题很老,swift 5有一个答案,它没有解决我的问题
-
但是您显然做错了,因为您不能将
data转换为您的自定义类型。你需要解码它,因为它是 json.再看看链接的问题 -
第二个答案可能会解决你的问题stackoverflow.com/questions/31982513/…