【问题标题】:Swift 5, make http post requestSwift 5,发出http post请求
【发布时间】:2020-05-17 02:34:40
【问题描述】:

如何在 Swift 5 上附加“邮递员操作”?我想使用此代码在 ios(iphone) 上使用 rest 服务登录。

【问题讨论】:

标签: swift http post request postman


【解决方案1】:

下面是Post方法的代码,使用URLSession

let Url = String(format: "http://10.10.10.53:8080/sahambl/rest/sahamblsrv/userlogin")
    guard let serviceUrl = URL(string: Url) else { return }
    let parameters: [String: Any] = [
        "request": [
                "xusercode" : "YOUR USERCODE HERE",
                "xpassword": "YOUR PASSWORD HERE"
        ]
    ]
    var request = URLRequest(url: serviceUrl)
    request.httpMethod = "POST"
    request.setValue("Application/json", forHTTPHeaderField: "Content-Type")
    guard let httpBody = try? JSONSerialization.data(withJSONObject: parameters, options: []) else {
        return
    }
    request.httpBody = httpBody
    request.timeoutInterval = 20
    let session = URLSession.shared
    session.dataTask(with: request) { (data, response, error) in
        if let response = response {
            print(response)
        }
        if let data = data {
            do {
                let json = try JSONSerialization.jsonObject(with: data, options: [])
                print(json)
            } catch {
                print(error)
            }
        }
    }.resume()
}

【讨论】:

  • 嗨 Austin,print(json) 结果是 { response = { success = 1; successmsg = "连接成功"; };} 如何获得“成功”的价值?
  • 使用这个库来处理 JSON,[github.com/SwiftyJSON/SwiftyJSON]
【解决方案2】:

用 Alamofire 4.x 试试这个

let parameters: [String: Any] = [
    "request": [
            "xusercode" : "YOUR USERCODE HERE",
            "xpassword": "YOUR PASSWORD HERE"
    ]
]

Alamofire.request("YOUR URL HERE", method: .post, parameters: parameters,encoding: JSONEncoding.default, headers: nil).responseJSON {
    response in
    switch response.result {
    case .success:             
    print(response)
        break
    case .failure(let error):
        print(error)
    }
}

【讨论】:

    猜你喜欢
    • 2016-09-24
    • 2018-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多