在URL中傳遞中文引數時傳遞失敗的解決方案

2021-08-04 22:38:50 字數 761 閱讀 5530

問題描述:使用標籤的herf來傳遞頁面的引數時,英文正常,中文失敗

原因分析:使用tomcat在url中傳遞引數,是通過http報頭來傳遞的,與表單傳遞不同,表單中傳遞的引數是在http中的body中傳送的,字元過濾器只能起到過濾httpbody中的引數,不能過濾head傳遞的引數,而tomcat中head預設的是iso8859-1的編碼方式,所以在url中傳遞過去後就亂碼了。

解決方案:在伺服器server.xml檔案中,找到你使用埠的connector,向其配置編碼方式,即加入usebodyencodingforuri="true" uriencoding="utf-8"然後重啟伺服器即可。

舉例:我使用的是8080埠,則

port="8080"

uriencoding="utf-8"/>

要注意的是,如果你的connector中已經有uriencoding="utf-8"也需要加上usebodyencodingforuri="true"(防止出現意外)

url傳遞中文引數

send.html var key 測試 通常,如果我們直接將中文寫在url中,得到的卻是一堆亂碼 e6 b5 8b e8 af 95 因為這涉及到編碼問題。如果你設定了編碼方式為utf 8,則它會將中文編譯為英文,如果對應的頁面的編碼方式也為utf 8,則就直接顯示編譯後的中文 解決方法 1.en...

URL傳遞中文引數亂碼問題

今天使用jquery傳送post請求時,傳遞的引數是中文的,接收是發現引數亂碼了!開始以為是頁面編碼問題,刪除檔案 新建,還有有此問題。後來在除錯中發現頁面獲取引數時正常,就是傳遞後獲取亂碼了,應該就是傳遞出錯了。網上搜了下,解決方法如下 1.頁面傳遞時 js傳遞 進行編碼設定 var userna...

URL請求傳遞中文引數亂碼

有的時候我們傳送url請求會帶有中文引數,例如a.jap?name 鎖,這樣直接傳送會產生中文亂碼的問題。js var url window.location.search var condition url.split alert condition 1 得到 e6 b5 b4 e7 9b 86 ...