1. 程式人生 > >http相應get和post請求示例

http相應get和post請求示例

public class TestGetPost {
	/**
	 * 向指定URL傳送GET方法的請求
	 * @param url 傳送請求的URL
	 * @param param 請求引數,請求引數應該是name1=value1&name2=value2的形式。
	 * @return URL所代表遠端資源的響應
	 */

	public static String sendGet(String url, String param) {
		String result = "";
		BufferedReader in = null;
		try {
			String urlName = url + "?" + param;
			URL realUrl = new URL(urlName);
			//開啟和URL之間的連線
			URLConnection conn = realUrl.openConnection();
			//設定通用的請求屬性
			conn.setRequestProperty("accept", "*/*");
			conn.setRequestProperty("connection", "Keep-Alive");
			conn.setRequestProperty("user-agent",
				"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
			//建立實際的連線
			conn.connect();
			//獲取所有響應頭欄位
			Map < String, List < String >> map = conn.getHeaderFields();
			//遍歷所有的響應頭欄位
			for (String key: map.keySet()) {
				System.out.println(key + "--->" + map.get(key));
			}
			//定義BufferedReader輸入流來讀取URL的響應
			in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
			String line;
			while ((line = in .readLine()) != null) {
				result += "/n" + line;
			}
		} catch (Exception e) {
			System.out.println("傳送GET請求出現異常!" + e);
			e.printStackTrace();
		}
		//使用finally塊來關閉輸入流
		finally {
			try {
				if ( in != null) { in .close();
				}
			} catch (IOException ex) {
				ex.printStackTrace();
			}
		}
		return result;
	}
	/**
	 * 向指定URL傳送POST方法的請求
	 * @param url 傳送請求的URL
	 * @param param 請求引數,請求引數應該是name1=value1&name2=value2的形式。
	 * @return URL所代表遠端資源的響應
	 */
	public static String sendPost(String url, String param) {
		PrintWriter out = null;
		BufferedReader in = null;
		String result = "";
		try {
			URL realUrl = new URL(url);
			//開啟和URL之間的連線
			URLConnection conn = realUrl.openConnection();
			//設定通用的請求屬性
			conn.setRequestProperty("accept", "*/*");
			conn.setRequestProperty("connection", "Keep-Alive");
			conn.setRequestProperty("user-agent",
				"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
			//傳送POST請求必須設定如下兩行
			conn.setDoOutput(true);
			conn.setDoInput(true);
			//獲取URLConnection物件對應的輸出流
			out = new PrintWriter(conn.getOutputStream());
			//傳送請求引數
			out.print(param);
			//flush輸出流的緩衝
			out.flush();
			//定義BufferedReader輸入流來讀取URL的響應
			in = new BufferedReader(
				new InputStreamReader(conn.getInputStream()));
			String line;
			while ((line = in .readLine()) != null) {
				result += "/n" + line;
			}
		} catch (Exception e) {
			System.out.println("傳送POST請求出現異常!" + e);
			e.printStackTrace();
		}
		//使用finally塊來關閉輸出流、輸入流
		finally {
			try {
				if (out != null) {
					out.close();
				}
				if ( in != null) { in .close();
				}
			} catch (IOException ex) {
				ex.printStackTrace();
			}
		}
		return result;
	}


	//提供主方法,測試傳送GET請求和POST請求
	public static void main(String args[]) {
		//傳送GET請求
		String s = TestGetPost.sendGet("http://localhost:8888/abc/login.jsp", null);
		System.out.println(s);
		//傳送POST請求
		String s1 = TestGetPost.sendPost(http: //localhost:8888/abc/a.jsp ,
			"user=李剛&pass=abc");
		System.out.println(s1);
	}
}

相關推薦

http相應getpost請求示例

public class TestGetPost { /** * 向指定URL傳送GET方法的請求 * @param url 傳送請求的URL * @param param 請求引數,請求引數應該是name1=value1&name2=value2的形

Go語言中利用http發起GetPost請求的方法示例

關於 HTTP 協議 HTTP(即超文字傳輸協議)是現代網路中最常見和常用的協議之一,設計它的目的是保證客戶機和伺服器之間的通訊。 HTTP 的工作方式是客戶機與伺服器之間的 “請求-應答” 協議。 客戶端可以是 Web 瀏覽器,伺服器端可以是計算機上的某些網路應用程式。 通常情況下

golang使用http client發起getpost請求示例

golang要請求遠端網頁,可以使用net/http包中的client提供的方法實現。查看了官方網站有一些示例,沒有太全面的例子,於是自己整理了一下: get請求 func httpGet() { resp, err := http.Get(

http基本getpost請求

read exce pen timeout etc builder pri void tin get請求: private static void httpGet(){ BufferedReader br = null; HttpU

C++:C語言實現HTTPGETPOST請求例程參考 C++:C語言實現HTTPGETPOST請求

C++:C語言實現HTTP的GET和POST請求   閱讀目錄   HTTP請求和IP/TCP   實現GET請求   實現POST請求:   參考: 回到頂部

Android入門 傳送HTTPGETPOST請求

                HTTP的請求詳解在我的部落格中已經講解過:如HttpRequestUtil.sendGetRequest();是傳送GET請求;一、核心程式碼HTTP GET 核心程式碼:(1)String value = URLEncoder.encode(String value,"UT

用Java實現傳送httpgetpost請求

import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.URL; import java.net.URLConnection; imp

【Java】——httpgetpost請求的區別

          GET和POST請求都是http的請求方式,使用者通過不同的http請求方式完成對資源(URL)的操作,GET、POST、PUT、DELETE就是對應著對這個資源的查,該,增,刪四個操作,具體點來講GET一般用於獲取|查詢資源資訊,而POST一般用於更新

httpgetpost請求

HttpRequest中常見的四種ContentType,通過request.getContentType()得到 application/x-www-form-urlencoded application/json multipart/form-data

簡單封裝HttpGetPost請求

public class HttpUtil { private HttpUtil() { } /** * get方法請求資料 * * @param url 請求地址 * @param params 請求引數 * @pa

【面試】HTTPgetpost請求的區別

面試時候遇到的一個問題。面試官想聽我說二者有什麼主要區別,二者均作為請求方法,使用場合為什麼不一致,在安全性上為什麼get比post要弱等等。這道題其實多多少少都能說一些,但本著追其根由的想法,回來順手查了查資料,總結如下。如果下次面試的你和我一樣碰到這個問題,

Httpgetpost請求簡單應用

網路請求中需要遵循http協議,而http有許多方法,大家一般最常用的就是post和get請求方法了! 其中,post和get都可以向伺服器傳送和請求資料,而我們一般都習慣用get請求資料,post傳送資料!get方法是把資料拼接到請求行裡面,我們可以直接看到

Http協議——getpost請求

開發十年,就只剩下這套架構體系了! >>>   

Http協議中GETPOST請求方法的區別

出場 請求參數 底層 情況下 -type 過去 firefox url sym GET和POST是HTTP請求的兩種基本方法,要說它們的區別,接觸過WEB開發的人都能說出一二。 最直觀的區別就是GET把參數包含在URL中,POST通過request body傳遞

http GET POST 請求的優缺點、區別以及誤區

Get和Post在面試中一般都會問到,一般的區別: (1)post更安全(不會作為url的一部分,不會被快取、儲存在伺服器日誌、以及瀏覽器瀏覽記錄中) (2)post傳送的資料更大(get有url長度限制) (3)post能傳送更多的資料型別(get只能傳送ASCII字元) (4)

Golang中http請求設定cookieheader(包括GETPOST請求)

//http請求 func httpHandle(method, urlVal,data string) { client := &http.Client{} var req *http.Request if data == "" { urlArr := strings.Sp

Linux命令傳送Httpgetpost請求(curlwget兩種方法)

   Http請求指的是客戶端向伺服器的請求訊息,Http請求主要分為get或post兩種,在Linux系統下可以用curl和wget命令來模擬Http的請求。下面就來介紹一下Linux系統如何模擬Http的get或post請求。 一、get請求:   1、使用cur

什麼是http協議?getpost請求有什麼區別?http請求content-Type有幾種,有什麼區別?http適合什麼場景?http狀態碼有哪些?

這裡是修真院後端小課堂,每篇分享文從 【背景介紹】【知識剖析】【常見問題】【解決方案】【編碼實戰】【擴充套件思考】【更多討論】【參考文獻】 八個方面深度解析後端知識/技能,本篇分享的是: 【什麼是http協議?get和post請求有什麼區別?http請求content-Type有幾種

http GET POST 請求的優缺點誤區 --前端優化

Get和Post在面試中一般都會問到,一般的區別: (1)post更安全(不會作為url的一部分,不會被快取、儲存在伺服器日誌、以及瀏覽器瀏覽記錄中) (2)post傳送的資料更大(get有url長度限制) (3)post能傳送更多的資料型別(get只能傳送ASCII字元)

【ASP.NET】HTTP中的 get post 請求

GET和POST是什麼?HTTP協議中的兩種傳送請求的方法。 HTTP是什麼?HTTP是基於TCP/IP的關於資料如何在全球資訊網中如何通訊的協議。 HTTP的底層是TCP/IP。所以GET和POST的底層也是TCP/IP,也就是說,GET/POST都是TCP連