一尘不染

JavaScript JSON:为什么正斜杠转义?

javascript

我不明白为什么会这样。

JSON转义为正斜杠,因此hash{a:"a/b/c"}序列化为{"a":"a\/b\/c"}而不是{"a":"a/b/c"}

为什么?


阅读 339

收藏
2020-04-25

共1个答案

一尘不染

JSON不需要您执行此操作,而是允许您执行此操作。它还允许您将“\u0061”用于“A”,但这不是必需的。\/在将JSON嵌入<script>标记中时允许帮助,该标记不允许</内部字符串出现,如Seb指出的那样。

Microsoft的一些ASP.NET Ajax/JSONAPI使用此漏洞来添加额外的信息,例如datetime将以形式发送"\/Date(milliseconds)\/"。(Y)

2020-04-25