如何在 swift5 和 Alamofire 5 测试版中获取和保存响应?

Siv*_*kar 6 ios swift alamofire

我尝试了一些代码,但仍然没有解决我的问题。请帮助我,我是 swift 代码的新手。

let parameters: Parameters = ["skey": "XXXXXX","country_code":"91","mobile":"XXX004","user_role":"4"]


 AF.request("http://XXXXX/dev/clinic/api/v1/login_otp?", method: .get, parameters: parameters)
    .responseJSON { (response) in
        switch response.result {
        case .success:
            if let JSON = response.result.value as? [String: Any] {
                let status = JSON["status"] as! String
                print(status)
            }
        case .failure(let error): break
            // error handling
        }
}
Run Code Online (Sandbox Code Playgroud)

下面是服务器响应

 success({
      message = "Otp sent successfully on +9170XXXX1004";
      status = 1;
})
Run Code Online (Sandbox Code Playgroud)

uni*_*xeO 16

对于 Alamo 5,您必须使用:

response.value
Run Code Online (Sandbox Code Playgroud)


Vla*_*lex 15

请尝试以下代码:

         switch response.result {
                case .success(let value):
                    if let JSON = value as? [String: Any] {
                        let status = JSON["status"] as! String
                        print(status)
                    }
                case .failure(let error): break
                    // error handling
                }

Run Code Online (Sandbox Code Playgroud)