Ⅰ java裡面的HTTP是什麼
java本身不提供http功能。
http是一個應用層協議,底層用到了TCP。Java提供了TCP協議,但是沒有http的實現。
但是,可以在網上找到開源的http client/server實現。例如apache-common-http之類的包。
Ⅱ java http spring mvc 302重定向 url 中文亂碼
把中文轉成unicode編碼,然後放到配置文件中,通過取unicode編碼來訪問中文,就不會存在亂碼的問題了,具體方法就是直接在配置文件里該中文=unicode編碼就行了,然後取到這個配置文件,讀取對應的值,然後放到url中。
Ⅲ 用java寫了一個Http client,但向伺服器post的時候傳中文參數老是亂碼,請大俠明示一下
以上的2個方法最好都要用上 過濾器只能解決POST請求 ,要處理GET請求就要用
bytes = string.getBytes("iso-8859-1") 得到原始的位元組串,再用 string = new String(bytes, "GB2312") 重新得到正確的字元串 。
這個方法,所以最好2個都要寫,這樣不管是POST還是GET請求就都能解決了。
Ⅳ java http請求中文路徑
不能用中文的,把中文的子文件夾名改為英語,java的路徑是不能有中文出現的
Ⅳ java怎麼改成中文
雖然支持中文,但是不建議;
我說的中文指的是類名和方法名;
至於運行代碼不可能是中文;
因為是美國語言
Ⅵ java web項目 在linux伺服器發送http post請求 中文亂碼
在進行post方式提交的時候,寫上request.setCharacterEncoding("UTF-8");
記住要在request設置提交參數之前設置字元編碼
祝:生活愉快
Ⅶ java HttpPost傳入參數中文亂碼
以上的2個方法最好都要用上 過濾器只能解決POST請求 ,要處理GET請求就要用
bytes = string.getBytes("iso-8859-1") 得到原始的位元組串,再用 string = new String(bytes, "GB2312") 重新得到正確的字元串 。
這個方法,所以最好2個都要寫,這樣不管是POST還是GET請求就都能解決了。
Ⅷ java中利用HttpUrlConnenction通過Get方法請求遠端伺服器,url中包含有中文
客戶端通過URLEncoder.encode("","GBK")發送請求,然後服務端配置成用GBK對URL解碼,應該是不用做別的事的。
(tomcat的編碼設置可以網路"tomcatconnectorencoding",resin可以網路"resincharacter-encoding")。
如果不行可以按照下面的例子發送變數utf8的內容到伺服器,然後對比一下運行結果,
比如伺服器端get到的數據是下面哪幾種解碼情況,或者一種都不是(這就有可能是伺服器程序不是utf8編碼)。
下面是我的運行結果,如果不一樣說明你客戶端編碼不是utf-8。
packagetest;
importjava.net.URLDecoder;
importjava.net.URLEncoder;
publicclassTest{
publicstaticvoidmain(String[]args)throwsException{
Stringutf8="我是內容:hello";
//模擬客戶端編碼
StringgbkURL=URLEncoder.encode(utf8,"GBK");
//模擬伺服器為ISO8859-1解碼(默認伺服器都是這種解碼)
StringisoDec=URLDecoder.decode(gbkURL,"ISO8859-1");
//亂碼處理(得到正確內容)
Stringiso2gbk=newString(isoDec.getBytes("ISO8859-1"),"GBK");
//模擬伺服器為UTF-8解碼(應該是人為配置的)
StringutfDec=URLDecoder.decode(gbkURL,"UTF-8");
//亂碼處理(得到的依舊是亂碼)
Stringuft2gbk=newString(utfDec.getBytes("ISO8859-1"),"GBK");
//配置為GBK解碼的伺服器,無亂碼
StringgbkDec=URLDecoder.decode(gbkURL,"GBK");
System.out.println(utf8);
System.out.println(gbkURL);
System.out.println("ISO解碼:"+isoDec);
System.out.println("UTF解碼:"+utfDec);
System.out.println("GBK解碼:"+gbkDec);
System.out.println("正常iso轉gbk:"+iso2gbk);//這是正常情況
System.out.println("錯誤iso轉gbk:"+uft2gbk);//這個將伺服器解碼配置改成GBK即可
}
}
Ⅸ java,HttpURLConnection輸出漢字亂碼,怎麼解決啊
conn=(HttpURLConnection)mUrl.openConnection();
conn.setRequestMethod("GET");
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setUseCaches(false);
conn.setRequestProperty("Content-type","application/x-www-form-urlencoded;charset=UTF-8");//解決亂碼問題
conn.connect();//連接遠程伺服器
重點這一句:application/x-www-form-urlencoded;charset=UTF-8
Ⅹ 用java HttpURLConnection 讀取網頁中文亂碼
出現這種情況,說明讀取到的是iso8859-1格式,不能識別中文編碼,所以需要轉換一下編碼格式才可以正常顯示的,完整代碼舉例:
String data = "&version=1410&idType=101&idNumber=4107701214512&ext1=1";
System.out.println(data);
URL url = new URL("http://localhost/bankcardcert/bankCardValidate.htm");
StringBuffer bankXmlBuffer = new StringBuffer();
//創建URL連接,提交到銀行卡鑒權,獲取返回結果
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setDoOutput(true);
connection.setRequestProperty("User-Agent", "directclient");
PrintWriter out = new PrintWriter(connection.getOutputStream());
out.println(data);
out.close();
BufferedReader in = new BufferedReader(new InputStreamReader(connection
.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null) {
bankXmlBuffer.append(inputLine);
}
in.close();
String data = new String(bankXmlBuffer.toString().getBytes("iso-8859-1"), 「utf-8」);
System.out.println(data);