3

在将我的 ajax 请求发送到我的 ServiceStack 服务时,我希望使用 JSV 而不是 JSON 来节省带宽。

我有以下 JSON 数据:

[{"201":"New York","022":"Chicago"}]

我想将其转换为以下 JSV 格式:

[{201:New York,022:Chicago}]

有没有办法简单地做到这一点?我不确定处理它的最佳方法是什么;但是根据我的知识/理解,我需要使用:(冒号)和,(逗号)拆分字符串,并且需要遍历它。但我担心这并不能解释字符转义。是否有可用于解析 JSV 格式的官方 JavaScript 库 - 我找不到?

4

1 回答 1

8

除了以 JSV 格式保存的几个字节之外,JSV 与 JSON 相比有什么优势吗?

JSV 可用于在 GET 请求中发送复杂类型,而使用 JSON 则无法做到这一点。其中一些其他答案显示了使用 JSV 在 GET 请求中发送复杂类型。

我们是否有任何 JavaScript 库或函数来解析 JSV?

可以在此处找到JavaScript 的官方 JSV 库。它还包括一个JsvServiceClient用 JavaScript 实现的。

我不确定处理它的最佳方法是什么,但根据我的知识/理解,我们需要使用 : (冒号)和 , (逗号)拆分字符串,并且需要循环遍历它。

使用上面的库,避免自己解析。

反序列化用法:

JSV.parse("<JSV String>");

序列化用法:

var myObject = {Id: 123, Test: [1,2,3]};
JSV.stringify(myObject);

我打算使用 JSV 而不是 JSON 格式来节省带宽

除非您计划使用非常大的数据集,否则使用 JSV 的节省可能会被发送 JavaScript JSV 解析库来处理请求的要求所抵消。官方的 JSV 库,缩小了 15KB 或大约 8KB。请记住,Web 浏览器已经内置了 JSON 支持,而且没有任何开销。

于 2014-09-03T16:16:15.307 回答