如何在包含URL的有效JSON中拥有一个字符串



我想创建一个有效的JSON对象,其中包含一个URL,例如

{"a": "b http://stackoverflow.com/questions/ask c"}

我可以:

  • (a)逃脱了带有后斜线的URL文本中的全部向前斜线
  • (b)将URL放入\url{}

我的问题是:

  1. 还有其他方法可以做到吗?(注意:我不是是指库或工具来自动化它,而是在JSON中编码或逃脱URL的有效方法。)

  2. 哪种可能性被认为是最佳实践?

  3. 在使用JSON对象(例如Java,Python等)中解析(b)中的(b)中编码的URL编码时是否存在已知问题?

快速注意,您不必在官方JSON规范中逃脱前向斜线。但是,向前斜线是唯一可以逃脱的非特殊JSON字符。

也很快说,没有有效的(Web)URL应包含需要逃脱的字符。

在编码包含carraige返回,选项卡等的JSON字符串的情况下(例如,必须通过\逃脱后斜线),最好的做法是遵循规格并使用后斜线逃脱字符。您提到的编程语言对后斜切的字符没有问题。

如果您这样做是有效的,但是大多数语言都允许函数使这种方式更好。(例如,C#中的替换(),以及Newtonsoft JSON Serializers and Parsers。)

查看您需要使用JSON的语言,并确保可以通过给定的功能解析或查找外部库。

相关内容

最新更新