0

所以我使用这个设置通过 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("+", " ");

谢谢

4

0 回答 0