如果页面响应头中包含中文内容,ajax请求的页面和被请求的页面即使编码统一,不同浏览器下表现的方式还是会不一样,firefox/IE下出现乱码,chrome可以正常调用getResponseHeader获取到中文的响应头内容。

9a5af6e6674b89071f5c9270d4a68d04.gif

要解决这个问题,可以将中文进行编码后在设置为响应头内容,这样ajax调动getResponseHeader获取内容后,在客户端解码下就不会出现乱码了,示例代码如下

c19c9df11658ba2ac509fc8e24c07474.gif

protected void Page_Load(object sender, EventArgs e)

{

if (Request.QueryString["ah"] == "1")

{

string s = "中国";

Response.AddHeader("cn", Microsoft.JScript.GlobalObject.escape(s));

Response.End();

}

}

var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("microsoft.xmlhttp");

xhr.open('get', 'bb.aspx?ah=1&' + new Date().getTime(), false);

xhr.send(null);

var cn = xhr.getResponseHeader('cn');

alert(cn);

加支付宝好友偷能量挖...

2014-3-7Web开发网

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐