Swift 将 http 请求响应作为数组

萨科阿斯科阿索

我收到了这个快速的 http 请求

    var request = URLRequest(url: URL(string: "http://www.web.com/ajax/logreg.php")!)
    request.httpMethod = "POST"
    let pass = pass_text_field.text!.addingPercentEncoding(withAllowedCharacters: .queryValueAllowed)!
    let postString = "app_reg_pass=\(pass)"
    request.httpBody = postString.data(using: .utf8)
    let task = URLSession.shared.dataTask(with: request) { data, response, error in
        guard let data = data, error == nil else {
            print("error=\(error!)")
            return
        }
        if let httpStatus = response as? HTTPURLResponse, httpStatus.statusCode != 200 {                           print("statusCode should be 200, but is \(httpStatus.statusCode)")
            print(response!)
        }

        let responseString = String(data: data, encoding: .utf8)
        print(responseString!)
    }
    task.resume()

响应字符串:

Array
(
    [0] => 1
    [1] => Murad
)

我对此代码的响应是数组。但是当我尝试将响应视为数组时,它给了我一个错误。如何将响应转换为数组,以便我可以这样做response[0]

保罗

您的结果很可能以 JSON 对象的形式出现,因此您需要先对其进行反序列化,然后才能使用结果。

do {
    let jsonData = try JSONSerialization.jsonObject(with: data, options: .mutableContainers) as! [Any]

    print(jsonData[0] as! Int)    // should print "1"
    print(jsonData[1] as! String) // should print "Murad"

} catch {
    print("An error occurred")
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从Akka HTTP POST请求读取JSON正文并将最终响应作为JSON数组发送

Django:将请求和响应作为视图参数传递

将 JSON 响应作为数组或普通对象发送

如何将响应作为数组处理?(Facebook PHP SDK)

Swift 3将HTTP请求结果发送到UIViewController

如何从 HTTP 请求将图像加载到 UIButton Swift 中

如何将一个功能的完整响应作为请求传递给另一个功能

创建HTTP响应作为Mockito的返回值

正在接收 HTTP 响应作为角度 7 中的错误

Swift中用于登录的HTTP POST请求返回“ MISSING_USERNAME”作为响应

Spring将响应作为json对对象强制转换

IE正在将控制器的响应作为文件

Swift Combine HTTP请求

将http请求作为参数传递

Laravel Fortify 不响应 HTTP 代码,而是响应实际路由,即使我将注册请求作为 XHR 发送

CURL响应作为数组

Swift-将数组作为POST请求参数发送到PHP

将数组作为 POST 请求参数发送到 PHP - Swift

在 swift HTTP 请求中没有得到完整的响应?

如何制作和处理一个Http请求,将json文件作为响应在Android中?

Swift HTTP POST 请求与结合

Swift Alamofire HTTP获取请求

Angular http响应作为错误参数,即使状态为200

角度2:将Http响应状态代码作为常量

Jmeter - 将特定的 JSON 响应动态传递给 HTTP 请求

2D Swift 数组的 HTTP 响应字符串

接收 bool 值作为对 http 请求的响应

如何将响应作为 URL 从服务器检索到客户端

将REST API响应作为输出声明返回给Azure B2C