js向后台传参中带有双引号["],但后台接收时只剩下了转义符[\]

-妖孽 2014-11-11 05:53:25
如题

这是怎么回事?

参数是一个string数组json.stringify()转成的字符串

ps:后台是用String接收的

请问如何解决啊?后台因为字符串没有双引号包着,转成数组就会报错。
...全文
3709 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
tony4geek 2014-11-12
  • 打赏
  • 举报
回复
var jsonText = JSON.stringify(contact);
document.write((jsonText)+"\n");

document.write(encodeURIComponent(jsonText)+"\n");

document.write(decodeURIComponent(jsonText));
tony4geek 2014-11-12
  • 打赏
  • 举报
回复
你怎么弄的。 JSON.stringify var contact = new Object(); contact.firstname = "Jesper"; contact.surname = "Aaberg"; contact.phone = ["555-0100", "555-0120"]; var jsonText = JSON.stringify(contact); document.write(jsonText); 看看这个。
-妖孽 2014-11-12
  • 打赏
  • 举报
回复
引用 5 楼 rui888 的回复:
系统转义很正常。
我js用了encodeURI(encodeURI(url))转码的,\"\"\" 变成 %5C%22%5C%22%5C%22 到后台只剩下了%5C%5C%5C 引号不见了 如果不转码也一样只剩下 \\\
-妖孽 2014-11-12
  • 打赏
  • 举报
回复
引用 4 楼 zhangjihao 的回复:
未传之前就被js转义了吧?贴代码看看
开发机上不了网,不能贴代码。。。 用的是jquery ajax 这里会被转义么?
tony4geek 2014-11-12
  • 打赏
  • 举报
回复
系统转义很正常。
howsun_zh 2014-11-12
  • 打赏
  • 举报
回复
未传之前就被js转义了吧?贴代码看看
-妖孽 2014-11-12
  • 打赏
  • 举报
回复
引用 1 楼 t_jl1979 的回复:
这样传没有问题,接收String也无问题。我也是这样做的,server端我用jackson库。 问题应出在server端解析字符串方法不对。
引用 2 楼 littlebrain4solving 的回复:
后台用JACKSON来转成数组试试。
比如 js url: xxx.action?params.array=["aaaa","bbbb"] action: params.array值 [aaaa,bbbb] 用JSONArray转成Strig的时候就会报错
meng020712 2014-11-12
  • 打赏
  • 举报
回复
前台是 :xx.stringify(jsonString); ///转成String字符 后台:你导入了相应的JSON夹包吗? 再将前台传过来的字符串、进行转换成对象或者是数组
  • 打赏
  • 举报
回复
后台用JACKSON来转成数组试试。
冥王之锤 2014-11-11
  • 打赏
  • 举报
回复
这样传没有问题,接收String也无问题。我也是这样做的,server端我用jackson库。 问题应出在server端解析字符串方法不对。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧