|
簡單的請求,簡單的響應,但是亂碼產生了
Why?
亂碼之所以產生,原因很簡單,無非就是編碼表用錯了,如傳的是big5字符,接收卻使用utf-8,或utf-8編碼,卻用GB2312解碼。
好吧,先確認一下是否請求過程中產生的亂碼
那我發過去的是亂碼嗎?
打開C:/tmp/下的test.txt
這是什么編碼,猜一猜?
看來客戶端沒錯,且正確地到了服務器端了,那應該是ASP.NET搞錯了編碼了,HttpRequest類里找下有沒有相關的Encoding相關的屬性
看看web.config吧
測試一下修改成utf-8看看
原因成功找到,看來就是客戶端傳utf-8,然后服務器端big5接收產生問題
不過這個專案不能這樣解決,因為這個舊專案跑了很久了,改這里可能影響以前的其它程式,那就改客戶端吧,設置請求屬性為utf-8,讓ASP.NET不迷茫
修改ajax請求代碼,設定charset屬性
問題得以解決,不過最近也有在vs2005中使用jquery,沒有發生亂碼,可能是vs2005已經默認為utf-8了(有空再去找下是在哪里默認的,或那位TX告知一下)
vs.NET2003默認是本機操作系統的編碼,如big5,gb2312,因此常常發生亂碼問題.
另,分享一個簡單的文本文件的亂碼查看方法.
對于一些不是以txt結尾的文本檔(如ASPx,cs),可以先將后綴改為txt,然后再打開IE看,否則IE會不認得,直接下載
圖片太多,請網速慢的TX原諒~~
JavaScript技術:Jquery亂碼的一次解決過程 圖解教程,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。