java使用post請(qǐng)求時(shí)出現(xiàn)亂碼怎么解決?針對(duì)這個(gè)問(wèn)題,這篇文章給出了相對(duì)應(yīng)的分析和解答,希望能幫助更多想解決這個(gè)問(wèn)題的朋友找到更加簡(jiǎn)單易行的辦法。
創(chuàng)新互聯(lián)網(wǎng)站建設(shè)提供從項(xiàng)目策劃、軟件開發(fā),軟件安全維護(hù)、網(wǎng)站優(yōu)化(SEO)、網(wǎng)站分析、效果評(píng)估等整套的建站服務(wù),主營(yíng)業(yè)務(wù)為成都做網(wǎng)站、網(wǎng)站設(shè)計(jì),成都App制作以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。創(chuàng)新互聯(lián)深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!Java WEB項(xiàng)目中,中文亂碼是一個(gè)經(jīng)常遇到而又非常頭痛的問(wèn)題,其中最容易出現(xiàn)亂碼的環(huán)節(jié)就是在瀏覽器向服務(wù)器發(fā)送請(qǐng)求的過(guò)程。下邊就這一問(wèn)題介紹解決方法,希望會(huì)幫助到大家。以下轉(zhuǎn)碼都是以UTF-8為參考,若為其他編碼格式可自行修改。
一、Response亂碼
(1)設(shè)置服務(wù)器端的編碼:response.setCharacterEncoding("UTF-8");
上邊此設(shè)置一定要再response.getWriter()方法之前;
(2)通知瀏覽器發(fā)送的數(shù)據(jù)格式:response.setContentType("text/html;charset=UTF-8");
(3)瀏覽器使用UTF-8進(jìn)行解碼。
二、Request亂碼
1.Post方式提交,參數(shù)存在于請(qǐng)求體中,只需要進(jìn)行此設(shè)置即可:
request.setCharacterEncoding("UTF-8");
2.Get方式提交,參數(shù)會(huì)拼接在URI地址后邊,服務(wù)器默認(rèn)按照iso8859-1進(jìn)行解碼,有兩種解決方法:
(1).在程序中修改接收到的請(qǐng)求編碼(此方法每次請(qǐng)求都需要轉(zhuǎn)碼,不推薦)
String str = request.getParameter("s"); str = new String(str.getBytes("iso8859-1"),"UTF-8")
(2)在Tomcat安裝文件夾中找到server.xml文件,查找
只需在此標(biāo)簽中增加 URIEncoding="UTF-8" ,然后重啟tomcat即可。
關(guān)于java使用post請(qǐng)求時(shí)出現(xiàn)亂碼怎么解決就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。