所以我使用这个设置通过 PostMessage 插件发送一个 JSON 对象,在接收端我使用 $.parseJSON(result);
问题是 stringify 正在向有空格的对象添加一堆 + 符号。
所以这是我在字符串化之前通过 postMessage 发送的内容。
{type="page", pageName="bla > bla bla > / whatever"}
然后在接收端运行 $.parseJSON(result); 我越来越。
{"type":"page","pageName":"bla+>+bla+bla+>+/+whatever"}
我如何逃脱或没有所有的 + 符号。如果 PostMessage 将其转换为查询字符串编码,那么我可以在 $.parseJSON() 之前从字符串中删除 + 符号吗?
PostMassage 接收方法
$.receiveMessage(function(e){
var params = e.data.split("&");
var result = {};
for (var i = 0; i < params.length; i++){
var tmp = params[i].split("=");
result[tmp[0]] = unescape(tmp[1]);
}
var msg = result['message'];
}
所以 msg 在我 parseJSON 之前是一个字符串
$.parseJSON(result['message']);
我尝试在消息上使用 .replace ,但这没有用。消息字符串的示例:
msg = '{"type":"page","pageName":"bla+>+bla+bla+>+/+whatever"}'
var msg = result['message']replace("+", " ");
谢谢