Swift:转义字符出现在json字符串中

时间:2015-09-07 06:26:12

标签: ios swift rest

我正在通过连接字符串来构造JSON字符串。要获得正确的Web服务报价(数字周围没有引号),我正在使用转义字符。当我在Xcode中打印结果字符串时,它看起来很好。

{"number":999,"name":"new"}

但是当我使用Wireshark捕获线路上的内容时,我可以在字符串中看到转义字符。

"{\"number\":999,\"name\":\"new\"}"

以下是创建字符串的代码:

let jsonString:String = "{\"number\":" + num + ",\"name\":\"" + name + "\"}"

如何创建字符串,以便不存在转义字符? 感谢

2 个答案:

答案 0 :(得分:1)

我无法将JSON作为字典发送的原因是Swift字典是无序的。在这种情况下,服务器正在使用MongoDB。我修复了问题服务器端,而不是试图在客户端中破解它。

原因如下:"为什么会发生:MongoDB使用名为BSON的二进制数据格式。在BSON中,密钥的顺序始终很重要。请注意,在JSON中,对象是一组无序的键/值对。" http://devblog.me/wtf-mongo

答案 1 :(得分:0)

我很确定Wireshark会在它自己的输出中插入转义字符。