gpt4 book ai didi

Swift JSONSerialization 作为 Int 而不是 Double

转载 作者:行者123 更新时间:2023-11-28 13:26:40 24 4
gpt4 key购买 nike

我有一个从 Double 隐式转换为 Int 的请求。我需要我的参数格式不变。例如下面,当我打印出请求时,我发送的金额为 300.0,它以 Int 300 而不是 Double 形式发送。

        let params = [
"id": "xxx",
"amount": 300.0
] as [String : Any]
let jsonData = try? JSONSerialization.data(withJSONObject: params)

let url = URL(string: "BASE_URL")
var request = URLRequest(url: url!)
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpMethod = "POST"
request.httpBody = jsonData

当我打印请求时,这是我得到的:

 {"id":"xxx", "amount":300} 

Instead of {"id":"xxx", "amount":300.0}

最佳答案

JSON 不是这样工作的。 JSON 在数字类型之间没有固有的区别。所以你看到的 JSON 等同于你放入其中的数据,因为 300300.0 之间没有区别。 (如果您输入了 300.1,当然,您会看到更像 300.1 的内容。)

如果客户希望您的号码视为 Double,这取决于客户。但是您不能输入 Double。您只能输入数字。

关于Swift JSONSerialization 作为 Int 而不是 Double,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58252311/

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