字符解码失败。值损坏
character decoding failed. value corrupted
这是我的 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] 的值为 [áº¢ã µå ¥ä?¢æ¡¥Æ´Û?à ⤡á?®ã? ä??à©?má¹?â?¤â° â?] 已被忽略。请注意,由于解码失败,此处引用的名称和值可能已损坏。使用调试级别日志记录查看原始 non-corrupted 值。
顺便说一句,
1.I 提到了 html 文件的 header utf8
2.server.xml 提到
URIEncoding="UTF-8"
3.server 边提到,
request.setCharacterEncoding("utf-8");
请注意我不需要任何编码,我只想获取我发送的数据。
提前致谢。
我认为是Content-Type引起的问题,默认jquery使用application/x-www-form-urlencoded; charset=UTF-8
。尝试将其设置为 text/plain
或 multipart/form-data
。这里是documentation。
这是我的 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] 的值为 [áº¢ã µå ¥ä?¢æ¡¥Æ´Û?à ⤡á?®ã? ä??à©?má¹?â?¤â° â?] 已被忽略。请注意,由于解码失败,此处引用的名称和值可能已损坏。使用调试级别日志记录查看原始 non-corrupted 值。
顺便说一句, 1.I 提到了 html 文件的 header utf8 2.server.xml 提到
URIEncoding="UTF-8"
3.server 边提到,
request.setCharacterEncoding("utf-8");
请注意我不需要任何编码,我只想获取我发送的数据。
提前致谢。
我认为是Content-Type引起的问题,默认jquery使用application/x-www-form-urlencoded; charset=UTF-8
。尝试将其设置为 text/plain
或 multipart/form-data
。这里是documentation。