我只是想知道为什么我的 wcf 休息返回包含 url 中的反斜杠的 json。如下:
https:\/\/s3.amazonaws.com\/reiaustralia\/1fc00dfab25044ecb31e4882121b535e\/jpg\/download.jpg?AWSAccessKeyId=AKIAISTDESL6TBRAVM4Q&Expires=1380692091&Signature=MduuaUAjQRisadtM%2FDuVDemexLY%3D
谢谢
正斜杠可以在 JSON 中使用反斜杠进行转义,但并非必须如此。因此,以下任一项:
{"url":"http://www.example.com/"}
or
{"url":"http\/\/www.example.com\/"}
将解析为具有url
字符串值为 的属性的对象http://www.example.com/
。
有些技术在生成 JSON 时会避开斜线,而有些则不会。例如,PHP 有一个名为JSON_UNESCAPED_SLASHES的选项,可让您控制是否转义斜杠。
您可以从json.org主页的“字符串”部分查看各种转义字符。
因为 javascript 中的 //(双斜杠)表示注释,而 /{string}/(斜杠内的字符串)表示正则表达式。
所以。为了在 json 中保持正确的值,必须将 \(反斜杠)放在 /(斜杠)前面。
它们只是转义字符,当您在应用程序中使用字符串时就可以了