Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何转换<;任何对象>;在Alamofire请求之后,在任何对象中使用Swift中的JSON进行响应?_Json_Swift_Alamofire - Fatal编程技术网

如何转换<;任何对象>;在Alamofire请求之后,在任何对象中使用Swift中的JSON进行响应?

如何转换<;任何对象>;在Alamofire请求之后,在任何对象中使用Swift中的JSON进行响应?,json,swift,alamofire,Json,Swift,Alamofire,所以我想向一个特定的API发送一个请求,该API应该返回一个JSON文件 我使用Alamofire来获取JSON对象: dataFromAPI : JSON Alamofire.request(.GET, myURL).responseJSON { (_, _, data) -> Void in dataFromAPI = JSON(data) } 我的问题是数据是AnyObject的数组,JSON函数需要AnyObject类型。如何

所以我想向一个特定的API发送一个请求,该API应该返回一个JSON文件

我使用Alamofire来获取JSON对象:

dataFromAPI : JSON
Alamofire.request(.GET, myURL).responseJSON { (_, _, data) -> Void in
               dataFromAPI = JSON(data)
            }

我的问题是数据是AnyObject的数组,JSON函数需要AnyObject类型。如何将一个转换为另一个或解决问题?

Alamofire返回一个
结果
对象。在提取JSON之前,应检查结果是成功还是失败:

Alamofire.request(.GET, myURL)
    .responseJSON { request, response, result in
        switch result {
        case .Success(let JSON):
            print("Success with JSON: \(JSON)")

        case .Failure(let data, let error):
            print("Request failed with error: \(error)")

            if let data = data {
                print("Response data: \(NSString(data: data, encoding: NSUTF8StringEncoding)!)")
            }
        }
    }

不确定我是否收到了你的问题,但我将尝试为你提供一个我如何做到这一点的例子。 将代码更改为您的案例

Alamofire.request(.GET, myURL)
    .validate(statusCode: 200..<300)
    .validate(contentType: ["application/json"])
    .responseJSON { request, response, jsonResult in
        switch jsonResult {
        case .Success:
            if let data = jsonResult.value as? AnyObject {
                self.dataFromAPI = JSON(data)
            }
        case .Failure(_, let error):
            print(error)
        }
}
Alamofire.request(.GET,myURL)
.验证(状态代码:200。。