gpt4 book ai didi

ios - 我的 json 响应的格式与我预期的不同

转载 作者:行者123 更新时间:2023-11-29 05:15:47 25 4
gpt4 key购买 nike

在浏览器中,我的网址以完美的 JSON 格式给出结果,如下所示

"articles": [
{
"source": {
"id": "the-times-of-india",
"name": "The Times of India"
},
"author": "Times Of India",

但是在 Xcode 输出中,我得到的响应如下。如何将此响应转换为完美的json格式

{
articles = (
{
author = "Times Of India";
content = "Hyderabad: Senior Police officials arrive at the site of the encounter. All four accused in the rape
description = "India News: All four accused in the rape and murder of woman veterinarian in Telangana have been killed in an encounter with the police. Cops claimed they tried t";
publishedAt = "2019-12-06T04:15:00Z";
source = {
name = "The Times of India";
};

},

我使用以下代码来解码 json 数据

let task = URLSession.shared.dataTask(with: url) { (data, response, error) in
guard let dataResponse = data, error == nil else {
print(error?.localizedDescription ?? "Response Error")
return

}
do{
//here dataResponse received from a network request
let jsonResponse = try JSONSerialization.jsonObject(with: dataResponse, options: [])
print(jsonResponse) //Response result

} catch let parsingError {
print("Error", parsingError)
}
}

task.resume()

请帮我解决这个问题。

最佳答案

首先,您必须创建一个 Decodable 结构并将其放在 viewController 类之前:

 struct YourArrray: Decodable {
let author: String?
let content: String?
let location: String?
let description : String?
let publishedAt : String?
let name: String?
}

声明您的网址:

let jsonUrlString = "https://yourUrljson"

之后创建结构数组 var:

var myVar = [YourArrray]()

现在您可以继续解码 json:

fileprivate func fetchJsonObject() {
guard let url = URL(string: jsonUrlString) else { return }

URLSession.shared.dataTask(with: url) { (data, respons, err) in
guard let data = data else { return }
do {
let jsonResponse = try JSONDecoder().decode([myVar].self, from: data)
print(jsonResponse)
} catch let jsonErr {
print("Error serializing:", jsonErr)
}
}.resume()
}

现在您只需调用函数 fetchJsonObject() 即可完成希望这有帮助:)

关于ios - 我的 json 响应的格式与我预期的不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59208016/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com