为了有一个 URL 友好的应用程序,我存储它的上下文在 URL 中有一个 JSON,它给出了类似的内容:
http://mysite.dev/myapppage/target#?context={%22attr1%22%3A{%22target_id-0%22%3A{%22value%22%3A%223%22%2C%22label%22%3A%22Hello%22}}}
其中编码基本上下文:
{
"attr1":
{
"target_id-0":
{
"value": "3",
"label": "Hello"
}
}
}
我正在序列化我的对象:
JSON.stringify(context)
我正在反序列化它:
var hashParamsElements = window.location.toString().split('?');
hashParamsElements.shift(); // we just skip the first part of the url
var hashParams = $.deparam(hashParamsElements.join('?'));
var contextString = hashParams.context;
var context = JSON.parse(contextString);
上下文仅存储以读取变量,其中没有评估代码。有人能告诉我它是否是 XSS 安全的吗?
如果有威胁:我该如何避免它?