json - 我什么时候更喜欢在查询字符串上使用 json?
问题描述
我偶然发现了一个在互联网上找不到答案的问题:我什么时候更喜欢使用 JSON,什么时候更喜欢使用查询字符串?
非常感谢您的专家对该主题的任何进一步想法。
编码示例也将不胜感激
谢谢!
解决方案
让我们把事情弄清楚:
- 查询字符串是
?
标记后的 URL 片段。例如,http://test.com/foo?baz=1
片段baz=1
中是该 URL 的查询字符串。 - JSON 是一种众所周知的数据格式。我不会在这里深入研究规范(因为它是众所周知的),但例如
{"test":1}
是一个 JSON 字符串。
所以这是两个不同的东西。它不像“这个或那个”,例如你可以将两者结合起来
http://test.com/?{"test":1}
现在您将 JSON 作为查询字符串。请注意,查询字符串格式未标准化,因此这是完全有效的。
如您所见,这两者并没有真正的可比性。除非“查询字符串”实际上是指具体格式,即典型x=1&y=2&z=3
样式。这两个我们可以比较。JSON 具有更好的结构优势,您可以嵌套对象,您有数组,您有(很少但仍然)类型。但它的可读性较差,特别是因为 URL 中的某些字符必须转义。而且解析它需要更多时间(虽然不太重要)。
我的方法如下:GET
在 URL 中使用“标准”查询字符串,POST
在正文中使用 JSON。如果您GET
变得更复杂,则将其转换为POST
带有 JSON 的。
推荐阅读
- javascript - 用字符串中的样式跨度替换特定符号
- sql - 将 48 小时添加到日期以创建新日期,将 48 小时添加到新日期并重复直到到达结束日期
- python - 增加 Pyarrow FlightStreamReader 的块大小
- assembly - 如何在bios汇编中打印一个数字
- omnet++ - 从 Omnetpp 中的不同运行收集结果时出现问题
- c++ - cmake find_package,find_library可以定位glfw,但是TARGET glfw为false
- javascript - 像google keep这样的项目,但是当我单击单个删除时,它会删除所有内容
- javascript - Bootstrap 4 崩溃无法正常工作
- gpu - 为什么 Spacy 3 NER 对 GPU 和 CPU 使用不同的管道?
- javascript - 我设法在谷歌表上附加和上传,不工作....我知道它的脚本或 onclick= 但卡住了任何帮助都会得到赞赏