做一個項目的時候所有頁面都需要使用gb2312編碼,所以在web.config裏配置了全局編碼
<globalization fileEncoding="Gb2312" requestEncoding="Gb2312" responseEncoding="Gb2312"/>
但是有個頁面是用ajax提交數據到ashx頁面來處理的,ajax提交的數據是用的utf-8,這樣在我接收數據的時候就出現了亂碼,不管是在頁面頭添加responseEncoding="Gb2312",還是指定meta裏的編碼都沒有效果,因爲.net接受數據的時候是用gb2312解碼的(之前的全局配置),最後繞來繞去,既然web.config能配置全局,肯定能配置單獨頁面了,於是查閱資料終於找到方法,在sys.web配置節上面添加如下配置
<location path="reg.aspx">
<system.web>
<globalization requestEncoding="utf-8" responseEncoding="utf-8"/>
</system.web>
</location>
path後面就是要單獨指定編碼的路徑了,可以是頁面,也可以是目錄.