當前位置:首頁 » 操作系統 » javahttp源碼

javahttp源碼

發布時間: 2022-12-25 14:57:43

⑴ 求一段java模擬Http請求的代碼(帶注釋)

用httpclient就行
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;

DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://www.google.com");
httpGet.addHeader("MyHeader", "MyValue");

try {
String body = httpClient.execute(httpGet, new ResponseHandler<String>() {

@Override
public String handleResponse(HttpResponse response) throws IOException {
Header firstHeader = response.getFirstHeader("MyHeader");
String headerValue = firstHeader.getValue();
return EntityUtils.toString(response.getEntity());
}
});
} catch (IOException e) {
e.printStackTrace();
}

源碼看的很頭疼,java中的HttpURLConnection類中的,有高人嗎

建議使用httpclient框架,這個比HttpURLConnection好用多了,以下是請求示例:
1. GET 方式傳遞參數

//先將參數放入List,再對參數進行URL編碼
List<BasicNameValuePair> params = new LinkedList<BasicNameValuePair>();
params.add(new BasicNameValuePair("param1", "數據")); //增加參數1
params.add(new BasicNameValuePair("param2", "value2"));//增加參數2
String param = URLEncodedUtils.format(params, "UTF-8");//對參數編碼
String baseUrl = "伺服器介面完整URL";
HttpGet getMethod = new HttpGet(baseUrl + "?" + param);//將URL與參數拼接
HttpClient httpClient = new DefaultHttpClient();
try {
HttpResponse response = httpClient.execute(getMethod); //發起GET請求
Log.i(TAG, "resCode = " + response.getStatusLine().getStatusCode()); //獲取響應碼
Log.i(TAG, "result = " + EntityUtils.toString(response.getEntity(), "utf-8"));//獲取伺服器響應內容
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

2. POST方式 方式傳遞參數
//和GET方式一樣,先將參數放入List
params = new LinkedList<BasicNameValuePair>();
params.add(new BasicNameValuePair("param1", "Post方法"));//增加參數1
params.add(new BasicNameValuePair("param2", "第二個參數"));//增加參數2
try {
HttpPost postMethod = new HttpPost(baseUrl);//創建一個post請求
postMethod.setEntity(new UrlEncodedFormEntity(params, "utf-8")); //將參數填入POST Entity中
HttpResponse response = httpClient.execute(postMethod); //執行POST方法
Log.i(TAG, "resCode = " + response.getStatusLine().getStatusCode()); //獲取響應碼
Log.i(TAG, "result = " + EntityUtils.toString(response.getEntity(), "utf-8")); //獲取響應內容
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

⑶ java寫的發送http頭的程序

看得我很是糾結
你這是socket連接還是http連接呀?
建議使用httpClient

⑷ java http請求時怎麼返回錯誤頁面源碼 (例如返回404時的頁面源碼),我的程序遇到這種就報錯。

用getErrorStream();

Scanner s;
if (connection.getResponseCode() != 200) {
s = new Scanner(connection.getErrorStream());
} else {
s = new Scanner(connection.getInputStream());
}

⑸ 怎麼在電腦上運行Java源程序代碼

http://hi..com/%D1%EE%5F%C1%F5/blog/item/55d15c35a8b7ca87a71e122e.html
上面的網址是java掃雷的源代碼

要運行,首先要配置環境變數(方法可參考網上)
其次找到程序所在的盤符目錄,比如java掃雷程序,放在了
E:\Java掃雷中,那麼在DOS下就要到此目錄

然後依次輸入javac *.java(編譯
java *(運行)即可

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:592
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:887
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:580
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:765
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:683
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1012
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:254
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:112
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:803
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:711