javascript
服务器 不支持gbk,解决JS请求服务器gbk文件乱码的问题
JS獲取服務器編碼格式為gb2312的文件時內容為亂碼,ajax網絡請求內部使用的是XMLHttpRequest,所以在請求之前需要設置一下編碼格式,但是設置xhr.setRequestHeader("accept", "text/csv;charset=gb2312,*/*");沒有效果,只有設置xhr.overrideMimeType("text/csv;charset=gb2312");才正確,代碼如下:
$.ajax({
type: "get",
url:"http://7xnhdv.com1.z0.glb.clouddn.com/test1.csv",
beforeSend: function(xhr) { //beforeSend定義全局變量
// xhr.setRequestHeader("accept", "text/csv;charset=gb2312,*/*");
xhr.overrideMimeType("text/csv;charset=gb2312");
},
success: function(xmlDoc, textStatus, xhr)
{
if(xhr.status == 200)
{
$('#view0').text(xmlDoc);
}
}
}
);
overrideMimeType作用將覆蓋發送給服務器的頭部,強制text/csv;charset=gb2312作為 mime-type。
ps:js中文顯示亂碼或在頁面顯示亂碼解決方法
①.js 文件中文顯示亂碼
Javascript文件XX.js編輯保存時有一種編碼方案(如GBK),當打開文件的時候所用的編碼(如UTF-8)和保存時的編碼方案不一致時,則會出現中文顯示亂碼。
解決方案:
(1) 用編輯器打開瀏覽的時候,選擇和原文件編碼(如GBK)一致的編碼方式查看,則不會出現亂碼;
(2)在eclipse中的package explorer中選中亂碼的XX.js,右鍵菜單中選擇properties,在Text file encoding中選擇與XX.js編輯保存時的編碼(如GBK),則可以正常顯示;
②網站頁面中JavaScript中中文字段亂碼
在eclipse或者編輯器中XX.js中中文顯示正常,在頁面調用XX.js,執行后頁面結果中中文字段顯示亂碼。
解決方案:
在引用XX.js的頁面上“顯示”加上XX.js文件的編碼方式,使之與XX.js文件的本身的編碼方式(如GBK)保持一致。
建議:
(1)在用Eclipse或者Myeclipse新建XX.js,進行編輯時,建議先將Text file encoding改為UTF-8,然后進行編輯保存。
(2)用文本文檔或者其他編輯器編輯保存XX.js, 建議以UTF-8的編碼方式保存。
(3) 在引用XX.js的頁面上“顯示”加上XX.js文件的編碼方式UTF-8。
時間: 2015-10-14
總結
以上是生活随笔為你收集整理的服务器 不支持gbk,解决JS请求服务器gbk文件乱码的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机网络就业范围分析,计算机网络技术专
- 下一篇: 服务器文件每天备份重新命名,定时备份服务