【问题标题】:Json Request failure using Alamofire in swift在 swift 中使用 Alamofire 的 Json 请求失败
【发布时间】:2018-06-12 06:41:44
【问题描述】:

http://dev.alshmokh1.net/mobile/Login/?username=yasser&password=123

当我调用这个 api 时,我正在从后端获取数据

[
    {
        "UserID": "yasser",
        "Username": null,
        "sysAdmin": "True",
        "UpdatePW": "True",
        "Name": "  selem yasser",
        "Email": "a@a/com",
        "iType": "2",
        "UserPW": "123",
        "Admin": "True",
        "Id_Bank": "5",
        "msg": "Success"
    }
]

我正在使用 alamofire 解析来自 api 的数据。 这是解析代码

func login()
   {

    let username = txtUserName.text!
     let password  = txtPassword.text!

    print("username\(username)  password \(password)")

    let params: [String: Any] = ["username": username, "password": password]

    let urlString = "http://dev.alshmokh1.net/mobile/Login/"
    guard let url = URL(string: urlString), var request = try? URLRequest(url: url, method: .post, headers: nil) else{
        //
        return
    }

    request.httpBody = params.map{ "\($0)=\($1)" }.joined(separator: "&").data(using: .utf8)
    Alamofire.request(request).responseJSON { response in

        print("response",response)
     }
    }

结果

[
    {
        "UserID": null,
        "Username": null,
        "sysAdmin": null,
        "UpdatePW": null,
        "Name": null,
        "Email": null,
        "iType": null,
        "UserPW": null,
        "Admin": null,
        "Id_Bank": null,
        "msg": "failure"
    }
]

如何在我犯错的地方使用 alamofire 解析数据

【问题讨论】:

标签: ios json swift alamofire


【解决方案1】:

尝试此代码,因为您需要在 url 中附加参数

func login()
    {

        let username = txtUserName.text!
        let password  = txtPassword.text!

        print("username\(username)  password \(password)")


        let urlString = String(format:"http://dev.alshmokh1.net/mobile/Login?username=%@&password=%@",username,password)
        guard let url = URL(string: urlString), var request = try? URLRequest(url: url, method: .post, headers: nil) else{
            //
            return
        }

        Alamofire.request(request).responseJSON { response in

            print("response",response)
        }
    }

回复

response SUCCESS: (
        {
        Admin = True;
        Email = "a@a/com";
        "Id_Bank" = 5;
        Name = "  selem yasser";
        UpdatePW = True;
        UserID = yasser;
        UserPW = 123;
        Username = "<null>";
        iType = 2;
        msg = Success;
        sysAdmin = True;
    }
)

【讨论】:

  • @ARAV 欢迎兄弟。
猜你喜欢
  • 1970-01-01
  • 2018-06-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多