我收到来自Web服务的Ajax响应,我不确定这些字符是什么。我需要将它们转换为ASCII/UTF-8等价物,但我不知道从哪里开始。Ajax响应中的奇怪字符
的某些字符的一个例子是:
\x3d1
\x26pf
\x3dp
\x26s
\x3dpsy
\x26
原始JSON响应是从谷歌建议:
{e:"-5vsTZHOF8yo8QPK1YisAQ",c:1,u:"http://www.google.co.uk/s?hl\x3den\x26pq\x3dbbc\x26xhr\x3dt\x26q\x3dc\x26cp\x3d1\x26pf\x3dp\x26sclient\x3dpsy\x26source\x3dhp\x26aq\x3d\x26aqi\x3d\x26aql\x3d\x26oq\x3d\x26pbx\x3d1\x26bav\x3don.2,or.r_gc.r_pw.\x26fp\x3d10b19ece71d55c8f\x26biw\x3d1280\x26bih\x3d554\x26tch\x3d1\x26ech\x3d1\x26psi\x3dv5vsTd78IMKvhQez9fCmCA.1307352340620.1",d:"[\x22c\x22,[[\x22c\\u003Cb\\u003Eurrys\\u003C\\/b\\u003E\x22,0,\x220\x22],[\x22c\\u003Cb\\u003Eomet\\u003C\\/b\\u003E\x22,0,\x221\x22],[\x22c\\u003Cb\\u003Ebbc\\u003C\\/b\\u003E\x22,0,\x222\x22],[\x22c\\u003Cb\\u003Eineworld\\u003C\\/b\\u003E\x22,0,\x223\x22],[\x22c\\u003Cb\\u003Earphone warehouse\\u003C\\/b\\u003E\x22,0,\x224\x22]],{j:1}]"}/*""*/{e:"-5vsTZHOF8yo8QPK1YisAQ",c:0,u:"http://www.google.co.uk/s?hl\x3den\x26pq\x3dbbc\x26xhr\x3dt\x26q\x3dc\x26cp\x3d1\x26pf\x3dp\x26sclient\x3dpsy\x26source\x3dhp\x26aq\x3d\x26aqi\x3d\x26aql\x3d\x26oq\x3d\x26pbx\x3d1\x26bav\x3don.2,or.r_gc.r_pw.\x26fp\x3d10b19ece71d55c8f\x26biw\x3d1280\x26bih\x3d554\x26tch\x3d1\x26ech\x3d1\x26psi\x3dv5vsTd78IMKvhQez9fCmCA.1307352340620.1",d:""}/*""*/
有何回应你假设得到? JSON,XML,CSV? – doNotCheckMyBlog 2011-06-06 09:26:23
虽然我们可以猜测编码方法,但如果您告诉我们服务器声称数据的内容类型是什么,完整响应是什么样的,以及如何在JS中解析它,那么可能会更好。有一个很好的机会,你应该使用一个合理的解码器作为整体的响应(而不是专注于这个小部分)。如果你控制了响应,那么最好的解决方案可能是在响应中切换到标准数据格式,而不管你现在在做什么。 – Quentin 2011-06-06 09:26:35
你有没有原始的答复? – SamT 2011-06-06 09:26:55