这是我的ajax电话:
function callServer()
{
alert('before : ' +uncompressed64Data.length);
var compressed = LZString.compressToUTF16(uncompressed64Data);
alert('after : ' +compressed.length);
debugger;
jQuery.ajax({
url : "/RegisterServlet_2/servlet/Register",
type : "POST",
data: "img="+compressed,
cache : false,
async : false,
success : function()
{
},
error : function()
{
}
});
}
尝试错误接收时出现以下错误:
字符解码失败。参数[img]的值为[Ả㵵¥¥ä?¢æ¡¥Æ´Û?à⤡ ???????????请注意,此处引用的名称和值可能会由于解码失败而损坏。使用调试级别日志记录来查看原始的,未损坏的值。
菲
1.我提到过html文件utf8的标题
2.提到server.xml
URIEncoding="UTF-8"
3.服务器端提到,
request.setCharacterEncoding("utf-8");
请注意,我不需要任何编码,我只想获取发送的数据。
提前致谢。
最佳答案
我认为由Content-Type引起的问题,默认情况下jquery使用application/x-www-form-urlencoded; charset=UTF-8
。尝试将其设置为text/plain
或multipart/form-data
。这是documentation。