我正在尝试向服务器执行HTTP请求:内容是一个JSON对象,其中包含键“金额”的数字值。如果“金额”是带有十进制数字的值,例如1.6,则请求将包含值1.6000000000000001,并且服务器不接受该值(api是Java编写的,类型是float。我无法发送服务器的字符串,因为从我那里接收数据的API只能接受“金额”的数字。我尝试使用Siesta Framework或dataTask执行请求,但结果始终相同
这就是我创建请求的方式(我省略了不太重要的部分)
let jsonData = try! JSONSerialization.data(withJSONObject: jsonObject) // jsonObject contains the Double value "amount"
let request = URLRequest(url: url)
request.httpBody = jsonData
let task = URLSession.shared.dataTask(with: request)
task.resume()
Run Code Online (Sandbox Code Playgroud)