gpt4 book ai didi

ios - Swift 4.2 - Alamofire 突然不工作

转载 作者:行者123 更新时间:2023-11-28 14:08:49 25 4
gpt4 key购买 nike

我将 Alamofire 4.7 与 Swift 4.2 一起使用,自从将我的代码转换为 Swift 4.2 之后,Alamofire 突然完全无法工作。

我有一个像这样的简单调用:

func createUser(username: String, email: String, password: String, passwordConfirm: String, completion: @escaping (_ result: String) -> Void)
{

let parameters: Parameters = [
"username" : username,
"email" : email,
"password" : password,
"confirm_password" : passwordConfirm
]

Alamofire.request(webservice + "?action=register", method: HTTPMethod.post, parameters: parameters, encoding: URLEncoding.httpBody, headers: [:]).responseJSON { response in

if(response.error == nil)
{

if let result = response.result.value {

let jsonData = result as! NSDictionary

if(jsonData["response"] == nil)
{
completion("")
}
else
{
completion(jsonData["response"] as! String)
}

}
}
else
{
completion((response.error?.localizedDescription)!)
}

}
}

所有参数都正确填充,在检查我的 api 后,它调用了正确的方法 (?action=register) 但我的帖子是空的。我做错了什么?

最佳答案

您知道您可以使用 Swift 4.2 super 轻松地解析 JSON 吗?我最近将它与拨号代码 TableView 一起使用 - 数据是本地 JSON 文件:

    struct Countries: Codable {
let countries: [Country]
}

struct Country: Codable {
let code: Int
let name: String
let flagImage: String
}

enum CodingKeys: String, CodingKey {
case code
case name
case flagImage
}

class CountryListVC: UITableViewController {

func loadJSON() {

if let path = Bundle.main.path(forResource: "countryDiallingCodes", ofType: "json") {

do {
let data = try Data(contentsOf: URL(fileURLWithPath: path), options: .alwaysMapped)
let jsonObj = try JSONDecoder().decode(Countries.self, from: data)
print("JSON Object: ", jsonObj)
countries = jsonObj.countries

} catch let error {
print (error)
}
} else {
print ("Error in path")
}
}

关于ios - Swift 4.2 - Alamofire 突然不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52751264/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com