gpt4 book ai didi

json - 在 Swift 中保存 http 请求的响应

转载 作者:行者123 更新时间:2023-11-30 13:42:06 24 4
gpt4 key购买 nike

我正在尝试在 Swift 中发出 http 请求,获取 JSON 作为响应并保存它(以从中获取所需的数据并以某种方式在屏幕上呈现它)

我正在提出这样的请求

func makeRequest(base: String, completionHandler: (JSON?, ErrorType?) -> Void){
do {
let opt = try HTTP.GET(baseUrl + "?base=" + base)
opt.start { response in
if let err = response.error {
completionHandler(nil, err)
return }
do {
let json = try JSON(data: response.data)
completionHandler(json, nil)
return
}
catch {
completionHandler(nil, nil)
return
}
}
} catch let error {
completionHandler(nil, error)
}
}

我这样调用“makeRequest”函数

func convert(value:Double, startCurrency:Currency, targetCurrency:Currency) -> (converted: Double, endCurrency: Currency) {

let api = ApiManager()
api.makeRequest(firstType, completionHandler: { (json:JSON?, error:ErrorType?) in
// how to save the JSON in here?
})

//calculate the correct value using the data from the json and return it
return (0.0, targetCurrency)
}

我是 Swift 新手,在从“api.makeRequest”获取变量“json”后,我不太确定如何存储它......我在“关闭”中用它所做的一切都保留在那里(就像它应该的那样)......如何存储它以便函数“convert”返回它?

我的方法完全错误吗?

最佳答案

一次查看https://github.com/SwiftyJSON/SwiftyJSON 。其次,您想将数据存储在 CoreData 还是某种形式的数据库中?如果没有,您可以立即将其发布到文本字段。

SwiftyJSON 示例:

let json = JSON(data: dataFromNetworking)
if let userName = json[0]["user"]["name"].string {
//Now you got your value
MytextLabel1.text = userName // set text field
}

关于json - 在 Swift 中保存 http 请求的响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35436283/

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