當前位置:首頁 » 編程語言 » javapostget

javapostget

發布時間: 2023-05-16 21:09:30

java的get post 區別

嗨你好
post和get的區別
post地址欄不會出現一大串?bjnghfgreygt這樣的東西如果是get,就會出現了1、Get方法通過URL請求來傳遞用戶的數據,將表單內各欄位名稱與其內容,以成對的字元串連接,置於action屬性所指程序的url後,如[url]http://www.mdm.com/test.asp?name=asd&password=sad[/url],數據都會直接顯示在url上,就像用戶點擊一個鏈接一樣;Post方法通過HTTPpost機制,將表單內各欄位名稱與其內容放置在HTML表頭(header)內一起傳送給伺服器端交由action屬性能所指的程序處理,該程序會通過標准輸入(stdin)方式,將表單的數據讀出並加以處理2、Get方式需要使用Request.QueryString來取得變數的值;而Post方式通過Request.Form來訪問提交的內容3、Get方式傳輸的數據量非常小,一般限制在2KB左右,但是執行效率卻比Post方法好;而Post方式傳遞的數據量相對較大,它是等待伺服器來讀取數據,不過也有位元組限制,這是為了避免對伺服器用大量數據進行惡意攻擊,根據微軟方面的說法,微軟對用Request.Form()可接收的最大數據有限制,IIS4中為80KB位元組,IIS5中為100KB位元組建議:除非你肯定你提交的數據可以一次性提交,否則請盡量用Post方法4、Get方式提交數據,會帶來安全問題,比如一個登陸頁面,通過Get方式提交數據時,用戶名和密碼將出現在URL上,如果頁面可以被緩存或者其他人可以訪問客戶這台機器,就可以從歷史記錄獲得該用戶的帳號和密碼,所以表單提交建議使用Post方法;Post方法提交的表單頁面常見的問題是,該頁面如果刷新的時候,會彈出一個對話框建議:出於安全性考慮,建議最好使用Post提交數據


post和get的不同之處
GET與POST的區別在於:(對於CGI)
如果以GET方式傳輸,所帶參數附加在CGI程式的URL後直接傳給server,並可從server端的QUERY_STRING這個環境變數中讀取;
如果以POST方式傳輸,則參數會被打包在數據報中傳送給server,並可從CONTENT_LENGTH這個環境變數中讀取出來。
還有一種情況是,你用的是GET方式,但傳送的參數是路徑,如:
----<ahref="/cgi-bin/a.pl/usr/local/bin/pine">CGI</a>
----這時所傳遞的參數"/usr/local/bin/pine"存放在PATH_INFO這個環境變數中。環境變數的讀取方式為$str=$ENV{'QUERY_STRING'};
理論上說,GET是從伺服器上請求數據,POST是發送數據到伺服器。事實上,GET方法是把數據參數隊列(querystring)加到一個URL上,值和表單是一一對應的。比如說,name=John。在隊列里,值和表單用一個&符號分開,空格用號替換,特殊的符號轉換成十六進制的代碼。因為這一隊列在URL里邊,這樣隊列的參數就能看得到,可以被記錄下來,或更改。通常GET方法還限制字元的大小。事實上POST方法可以沒有時間限制的傳遞數據到伺服器,用戶在瀏覽器端是看不到這一過程的,所以POST方法比較適合用於發送一個保密的(比如信用卡號)或者比較大量的數據到伺服器。
Post是允許傳輸大量數據的方法,而Get方法會將所要傳輸的數據附在網址後面,然後一起送達伺服器,因此傳送的數據量就會受到限制,但是執行效率卻比Post方法好。
對於GET提交的數據,WWW伺服器將把數據放在環境變數QUERY_STRING中;對於POST方法,數據被送到WWW伺服器的STDOUT中,然後CGI從自己的STDIN中讀取。使用傳統的CGI方法,用戶必須自己編程來處理這些數據。
GET與POST的區別在於,如果以GET方式傳輸,所帶參數附加在CGI程式的URL後直接傳給server,並可從server端的QUERY_STRING這個環境變數中讀取;如果以POST方式傳輸,則參數會被打包在數據報中傳送給server,並可從CONTENT_LENGTH這個環境變數中讀取出來。還有一種情況是,你用的是GET方式,但傳送的參數是路徑,如:----<ahref="/cgi-bin/a.pl/usr/local/bin/pine">CGI</a>----這時所傳遞的參數"/usr/local/bin/pine"存放在PATH_INFO這個環境變數中。環境變數的讀取方式為$str=$ENV{'QUERY_STRING'};
總結起來:
get方式:以URL字串本身傳遞數據參數,在伺服器端可以從'QUERY_STRING'這個變數中直接讀取,效率較高,但缺乏安全性,也無法來處理復雜的數據(只能是字元串,比如在servlet/jsp中就無法處理發揮java的比如vector之類的功能);
post方式:就傳輸方式講參數會被打包在數據報中傳輸,從CONTENT_LENGTH這個環境變數中讀取,便於傳送較大一些的數據,同時因為不暴露數據在瀏覽器的地址欄中,安全性相對較高,但這樣的處理效率會受到影響。
-------------------

在表單里使用」post」和」get」有什麼區別
在Form裡面,可以使用post也可以使用get。它們都是method的合法取值。但是,post和get方法在使用上至少有兩點不同:1、Get方法通過URL請求來傳遞用戶的輸入。Post方法通過另外的形式。2、Get方式的提交你需要用Request.QueryString來取得變數的值,而Post方式提交時,你必須通過Request.Form來訪問提交的內容。仔細研究下面的代碼。你可以運行之來感受一下:代碼<!--兩個Form只有Method屬性不同--><FORMACTION=「getpost.asp」METHOD=「get」><INPUTTYPE=「text」NAME=「Text」VALUE=「HelloWorld」></INPUT><INPUTTYPE=「submit」VALUE=「Method=Get」></INPUT></FORM><BR><FORMACTION=「getpost.asp」METHOD=「post」><INPUTTYPE=「text」NAME=「Text」VALUE=「HelloWorld」></INPUT><INPUTTYPE=「submit」VALUE=「Method=Post」></INPUT></FORM><BR><BR><%IfRequest.QueryString(「Text」)<>「「Then%>通過get方法傳遞來的字元串是:「<B><%=Request.QueryString(「Text」)%></B>「<BR><%EndIf%><%IfRequest.Form(「Text」)<>「「Then%>通過Post方法傳遞來的字元串是:「<B><%=Request.Form(「Text」)%></B>「<BR><%EndIf%>說明把上面的代碼保存為getpost.asp,然後運行,首先測試post方法,這時候,瀏覽器的url並沒有什麼變化,返回的結果是:通過Post方法傳遞來的字元串是:"HelloWorld"然後測試用get方法提交,請注意,瀏覽器的url變成了:http://localhost/general/form/getpost.asp?Text=Hello+World而返回的結果是:通過get方法傳遞來的字元串是:"HelloWorld"最後再通過post方法提交,瀏覽器的url還是:http://localhost/general/form/getpost.asp?Text=Hello+World而返回的結果變成:通過get方法傳遞來的字元串是:"HelloWorld"通過Post方法傳遞來的字元串是:"HelloWorld"提示通過get方法提交數據,可能會帶來安全性的問題。比如一個登陸頁面。當通過get方法提交數據時,用戶名和密碼將出現在URL上。如果:1、登陸頁面可以被瀏覽器緩存;2、其他人可以訪問客戶的這台機器。那麼,別人即可以從瀏覽器的歷史記錄中,讀取到此客戶的賬號和密碼。所以,在某些情況下,get方法會帶來嚴重的安全性問題。建議在Form中,建議使用post方法。

⑵ java中get請求和post請求分別請求的對象類型是什麼,什麼不一樣

1. get 是從伺服器上獲取數據,post 是向伺服器傳送數據。 get 請求返回 request - URI 所指出的任意信息。
Post 請求用來發送電子郵件、新聞或發送能由交互用戶填寫的表格。這是唯一需要在請求中發送body的請求。使用Post請求時需要在報文首部 Content - Length 欄位中指出body的長度。
2. get 是把參數數據隊列加到提交表單的ACTION屬性所指的URL中,值和表單內各個欄位一一對應,在URL中可以乎吵看到。post是通過HTTP post機制纖頃尺,將表單內各個欄位與其內容放置在HTML HEADER內一起傳送到ACTION屬性所指的URL地址,用戶看不到這個過程。
3. 對於 get 方式,伺服器端用Request.QueryString獲取變數的值,對於 post 方式,伺服器端用Request.Form獲取提交的數據。
4. get 傳送的數據量較小,不能大於2KB。post 傳送的數據量較大,一般被默認為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為100KB。 用IIS過濾器的只接受get參數,所以一般大型搜索引擎都是用get方式。
5. get 安全性非常低,post 安全性相對較高。如果這些數據是中毀高文數據而且是非敏感數據,那麼使用 get;如果用戶輸入的數據不是中文字元而且包含敏感數據,那麼還是使用 post 為好。

⑶ java中怎樣用post,get,put請求

java中用post,get,put請求方法:
public static String javaHttpGet(String url,String charSet){

String resultData = null;
try {
URL pathUrl = new URL(url); //創建一個URL對象
HttpURLConnection urlConnect = (HttpURLConnection) pathUrl.openConnection(); //打開一個HttpURLConnection連接
urlConnect.setConnectTimeout(30000); // 設置連接超時時間
urlConnect.connect();
if (urlConnect.getResponseCode() == 200) { //請求成功
resultData = readInputStream(urlConnect.getInputStream(), charSet);
}
} catch (MalformedURLException e) {
LogL.getInstance().getLog().error("URL出錯!", e);
} catch (IOException e) {
LogL.getInstance().getLog().error("讀取數據流出錯!", e);
}
return resultData;
}
public static String javaHttpPost(String url,Map<String,Object> map,String charSet){
String resultData=null;
StringBuffer params = new StringBuffer();
try {
Iterator<Entry<String, Object>> ir = map.entrySet().iterator();
while (ir.hasNext()) {
Map.Entry<String, Object> entry = (Map.Entry<String, Object>) ir.next();
params.append(URLEncoder.encode(entry.getKey(),charSet) + "=" + URLEncoder.encode(entry.getValue().toString(), charSet) + "&");
}
byte[] postData = params.deleteCharAt(params.length()).toString().getBytes();
URL pathUrl = new URL(url); //創建一個URL對象
HttpURLConnection urlConnect = (HttpURLConnection) pathUrl.openConnection();
urlConnect.setConnectTimeout(30000); // 設置連接超時時間
urlConnect.setDoOutput(true); //post請求必須設置允許輸出
urlConnect.setUseCaches(false); //post請求不能使用緩存
urlConnect.setRequestMethod("POST"); //設置post方式請求
urlConnect.setInstanceFollowRedirects(true);
urlConnect.setRequestProperty("Content-Type","application/x-www-form-urlencoded; charset="+charSet);// 配置請求Content-Type
urlConnect.connect(); // 開始連接
DataOutputStream dos = new DataOutputStream(urlConnect.getOutputStream()); // 發送請求參數
dos.write(postData);
dos.flush();
dos.close();
if (urlConnect.getResponseCode() == 200) { //請求成功
resultData = readInputStream(urlConnect.getInputStream(),charSet);
}
} catch (MalformedURLException e) {
LogL.getInstance().getLog().error("URL出錯!", e);
} catch (IOException e) {
LogL.getInstance().getLog().error("讀取數據流出錯!", e);
} catch (Exception e) {
LogL.getInstance().getLog().error("POST出錯!", e);
}
return resultData;
}

⑷ JAVA中Get和Post請求的區別收集整理

Get:是以實體的方式得到由請求URI所指定資源的信息,如果請求URI只是一個數據產生過程,那麼最終要在響應實體中返回的是處理過程的結果所指向的資源,而不是處理過程的描述。
Post:用來向目的伺服器發出請求,要求它接受被附在請求後的實體,並把它當作請求隊列中請求URI所指定資源的附加新子項,Post被設計成用統一的方法實現下列功能:
1:對現有資源的解釋
2:向電子公告欄、新聞組、郵件列表或類似討論組發信息。
3:提交數據塊
4:通過附加操作來擴展資料庫
從上面描述可以看出,Get是向伺服器發索取數據的一種請求;而Post是向伺服器提交數據的一種請求,要提交的數據位於信息頭後面的實體中。

⑸ JAVA的get post 區別

Form 中的 get 和 post 方法,在數據傳輸過程中分別對應了 HTTP 協議中的 GET 和 POST 方法。二者主要區別如下:
1)Get 是用來從伺服器上獲得數據,而 Post 是用來向伺服器上傳數據;
2)Get 將表單中數據按照variable=value 的形式,添加到 action 所指向的 URL 後面,並且兩者使用「?」連接,而各個變數之間使用「&」連接;Post 是將表單中的數據放在 form 的數據體中,按照變數和值相對應的方式,傳遞到 action 所指向 URL;
3)Get 是不安全的,因為在傳輸過程,數據被放在請求的 URL 中;Post 的所有操作對用戶來說都是不可見的;
4)Get 傳輸的數據量小,這主要是因為受 URL 長度限制;而 Post 可以傳輸大量的數據,所以在上傳文件只能使用 Post;
5)Get 限制 Form 表單的數據集必須為ASCII 字元,而 Post 支持整個 ISO10646 字元集;
6)Get 是 Form 的默認方法。

⑹ JAVA中Get和Post請求的區別收集整理

Get:是以實體的方式得到由請求URI所指定資源的信息,如果請求URI只是一個數據產生過程,那麼最終要在響應實體中返回的是處理過程的結果所指向的資源,而不是處理過程的描述。

Post:用來向目的伺服器發出請求,要求它接受被附在請求後的實體,並把它當作請求隊列中請求URI所指定資源的附加新子項,Post被設計成用統一的方法實現下列功能:
1:對現有資源的解釋
2:向電子公告欄、新聞組、郵件列表或類似討論組發信息。
3:提交數據塊
4:通過附加操作來擴展資料庫

從上面描述可以看出,Get是向伺服器發索取數據的一種請求;而Post是向伺服器提交數據的一種請求,要提交的數據位於信息頭後面的實體中。

⑺ JavaWeb核心04-POST和GET兩種請求方式的區別

get把參數包含在URL中,post通過request body傳遞參數。
get用於獲取數據,post用於提交數據。
get參數有長度限制(受限於url長度,具體的數值取決於瀏覽器和伺服器的限制),而post無限制
post比get安全

⑻ JAVA中Get和Post請求的區別收集整理

一 原理區別

一般在瀏覽器中輸入網址訪問資源都是通過GET方式;在FORM提交中,可以通過Method指定提交方式為GET或者POST,默認為GET提交

Http定義了與伺服器交互的不同方法,最基本的方法有4種,分別是GET,POST,PUT,DELETE

URL全稱是資源描述符,我們可以這樣認為:一個URL地址,它用於描述一個網路上的資源,而HTTP中的GET,POST,PUT,DELETE就對應著對這個資源的查,改,增,刪4個操作。到這里,大家應該有個大概的了解了,GET一般用於獲取/查詢資源信息,而POST一般用於更新資源信息(個人認為這是GET和POST的本質區別,也是協議設計者的本意,其它區別都是具體表現形式的差異)。

根據HTTP規范,GET用於信息獲取,而且應該是安全的和冪等的。

1.所謂安全的意味著該操作用於獲取信息而非修改信息。換句話說,GET請求一般不應產生副作用。就是說,它僅僅是獲取資源信息,就像資料庫查詢一樣,不會修改,增加數據,不會影響資源的狀態。

* 注意:這里安全的含義僅僅是指是非修改信息。

2.冪等的意味著對同一URL的多個請求應該返回同樣的結果。這里我再解釋一下冪等這個概念:

冪等(idempotent、idempotence)是一個數學或計算機學概念,常見於抽象代數中。
冪等有以下幾種定義:
對於單目運算,如果一個運算對於在范圍內的所有的一個數多次進行該運算所得的結果和進行一次該運算所得的結果是一樣的,那麼我們就稱該運算是冪等的。 比如絕對值運算就是一個例子,在實數集中,有abs(a)=abs(abs(a))。
對於雙目運算,則要求當參與運算的兩個值是等值的情況下,如果滿足運算結果與參與運算的兩個值相等,則稱該運算冪等,如求兩個數的最大值的函數,有在實數集中冪等,即max(x,x)=x。

看完上述解釋後,應該可以理解GET冪等的含義了。

但在實際應用中,以上2條規定並沒有這么嚴格。引用別人文章的例子:比如,新聞站點的頭版不斷更新。雖然第二次請求會返回不同的一批新聞,該操作仍然被認為是安全的和冪等的,因為它總是返回當前的新聞。從根本上說,如果目標是當用戶打開一個鏈接時,他可以確信從自身的角度來看沒有改變資源即可。

根據HTTP規范,POST表示可能修改變伺服器上的資源的請求。繼續引用上面的例子:還是新聞以網站為例,讀者對新聞發表自己的評論應該通過POST實現,因為在評論提交後站點的資源已經不同了,或者說資源被修改了。

上面大概說了一下HTTP規范中,GET和POST的一些原理性的問題。但在實際的做的時候,很多人卻沒有按照HTTP規范去做,導致這個問題的原因有很多,比如說:

1.很多人貪方便,更新資源時用了GET,因為用POST必須要到FORM(表單),這樣會麻煩一點。

2.對資源的增,刪,改,查操作,其實都可以通過GET/POST完成,不需要用到PUT和DELETE。

3.另外一個是,早期的但是Web MVC框架設計者們並沒有有意識地將URL當作抽象的資源來看待和設計。還有一個較為嚴重的問題是傳統的Web MVC框架基本上都只支持GET和POST兩種HTTP方法,而不支持PUT和DELETE方法。

* 簡單解釋一下MVC:MVC本來是存在於Desktop程序中的,M是指數據模型,V是指用戶界面,C則是控制器。使用MVC的目的是將M和V的實現代碼分離,從而使同一個程序可以使用不同的表現形式。

以上3點典型地描述了老一套的風格(沒有嚴格遵守HTTP規范),隨著架構的發展,現在出現REST(Representational State Transfer),一套支持HTTP規范的新風格,這里不多說了,可以參考《RESTful Web Services》。

二 表現形式區別

搞清了兩者的原理區別,我們再來看一下他們實際應用中的區別:

為了理解兩者在傳輸過程中的不同,我們先看一下HTTP協議的格式:

HTTP請求:
<requestline>//http請求行
<headers>//http請求消息報頭
<blankline>//回車換行
[<request-body>]//http請求正文

在HTTP請求中,第一行必須是一個請求行(request line),用來說明請求類型、要訪問的資源以及使用的HTTP版本。緊接著是一個首部(header)小節,用來說明伺服器要使用的附加信息。在首部之後是一個空行,再此之後可以添加任意的其他數據[稱之為主體(body)]。

GET與POST方法實例:

GET/books/?sex=man&name=ProfessionalHTTP/1.1
Host:www.wrox.com
User-Agent:Mozilla/5.0(Windows;U;WindowsNT5.1;en-US;rv:1.7.6)
Gecko/20050225Firefox/1.0.1
Connection:Keep-Alive

POST/HTTP/1.1
Host:www.wrox.com
User-Agent:Mozilla/5.0(Windows;U;WindowsNT5.1;en-US;rv:1.7.6)
Gecko/20050225Firefox/1.0.1
Content-Type:application/x-www-form-urlencoded
Content-Length:40
Connection:Keep-Alive
(----此處空一行----)
name=Professional%20Ajax&publisher=Wiley

有了以上對HTTP請求的了解和示例,我們再來看兩種提交方式的區別:

(1)GET提交,請求的數據會附在URL之後(就是把數據放置在HTTP協議頭中),以?分割URL和傳輸數據,多個參數用&連接;例 如:login.action?name=hyddd&password=idontknow&verify=%E4%BD%A0 %E5%A5%BD。如果數據是英文字母/數字,原樣發送,如果是空格,轉換為+,如果是中文/其他字元,則直接把字元串用BASE64加密,得出如: %E4%BD%A0%E5%A5%BD,其中%XX中的XX為該符號以16進製表示的ASCII。

POST提交:把提交的數據放置在是HTTP包的包體中。上文示例中紅色字體標明的就是實際的傳輸數據

因此,GET提交的數據會在地址欄中顯示出來,而POST提交,地址欄不會改變

(2)傳輸數據的大小:首先聲明:HTTP協議沒有對傳輸的數據大小進行限制,HTTP協議規范也沒有對URL長度進行限制。

而在實際開發中存在的限制主要有:

GET:特定瀏覽器和伺服器對URL長度有限制,例如 IE對URL長度的限制是2083位元組(2K+35)。對於其他瀏覽器,如Netscape、FireFox等,理論上沒有長度限制,其限製取決於操作系 統的支持。

因此對於GET提交時,傳輸數據就會受到URL長度的 限制。

POST:由於不是通過URL傳值,理論上數據不受 限。但實際各個WEB伺服器會規定對post提交數據大小進行限制,Apache、IIS6都有各自的配置。

(3)安全性:

POST的安全性要比GET的安全性高。注意:這里所說的安全性和上面GET提到的「安全」不是同個概念。上面 「安全」的含義僅僅是不作數據修 改,而這 里安全的含義是真正的Security的含義,比如:通過GET提交數據,用戶名和密碼將明文出現在URL上,因為(1)登錄頁面有可能被瀏覽器緩存, (2)其他人查看瀏覽器的歷史紀錄,那麼別人就可以拿到你的賬號和密碼了,除此之外,使用GET提交數據還可能會造成Cross-site request forgery攻擊

(4)Http get,post,soap協議都是在http上運行的
1)get:請求參數是作為一個key/value對的序列(查詢字元串)附加到URL上的
查詢字元串的長度受到web瀏覽器和web伺服器的限制(如IE最多支持2048個字元),不適合傳輸大型數據集同時,它很不安全
2)post:請求參數是在http標題的一個不同部分(名為entity body)傳輸的,這一部分用來傳輸表單信息,因此必須將Content-type設置為:application/x-www-form- urlencoded。post設計用來支持web窗體上的用戶欄位,其參數也是作為key/value對傳輸。
但是:它不支持復雜數據類型,因為post沒有定義傳輸數據結構的語義和規則。
3)soap:是http post的一個專用版本,遵循一種特殊的xml消息格式
Content-type設置為: text/xml 任何數據都可以xml化

三 HTTP響應
1.HTTP響應格式:

<statusline>//http響應狀態行
<headers>//http響應消息報頭
<blankline>//回車換行
[<response-body>]//http響應正文



在響應中唯一真正的區別在於第一行中用狀態信息代替了請求信息。狀態行(status line)通過提供一個狀態碼來說明所請求的資源情況。

HTTP響應實例:


HTTP/1.1200OKDate:Sat,31Dec200523:59:59GMTContent-Type:text/html;charset=ISO-8859-1Content-Length:122

<html>
<head>
<title>WroxHomepage</title>
</head>
<body><!--bodygoeshere--></body>
</html>


2.最常用的狀態碼有:

◆200(OK):找到了該資源,並且一切正常。
◆304(NOTMODIFIED):該資源在上次請求之後沒有任何修改。這通常用於瀏覽器的緩存機制。
◆401(UNAUTHORIZED):客戶端無權訪問該資源。這通常會使得瀏覽器要求用戶輸入用戶名和密碼,以登錄到伺服器。
◆403(FORBIDDEN):客戶端未能獲得授權。這通常是在401之後輸入了不正確的用戶名或密碼。
◆404(NOTFOUND):在指定的位置不存在所申請的資源.

四 完整示例

例子:

HTTPGET發送

GET/DEMOWebServices2.8/Service.asmx/CancelOrder?UserID=string&PWD=string&OrderConfirmation=stringHTTP/1.1
Host:api.efxnow.com

Response:

HTTP/1.1200OK
Content-Type:text/xml;charset=utf-8
Content-Length:length
<?xmlversion="1.0"encoding="utf-8"?>
<objPlaceOrderResponsexmlns="https://api.efxnow.com/webservices2.3">
<Success>boolean</Success>
<ErrorDescription>string</ErrorDescription>
<ErrorNumber>int</ErrorNumber>
<CustomerOrderReference>long</CustomerOrderReference>
<OrderConfirmation>string</OrderConfirmation>
<CustomerDealRef>string</CustomerDealRef>
</objPlaceOrderResponse>

Http Post 發送

POST/DEMOWebServices2.8/Service.asmx/CancelOrderHTTP/1.1
Host:api.efxnow.com
Content-Type:application/x-www-form-urlencoded
Content-Length:length
UserID=string&PWD=string&OrderConfirmation=string

Response:

HTTP/1.1200OK
Content-Type:text/xml;charset=utf-8
Content-Length:length
<?xmlversion="1.0"encoding="utf-8"?>
<objPlaceOrderResponsexmlns="https://api.efxnow.com/webservices2.3">
<Success>boolean</Success>
<ErrorDescription>string</ErrorDescription>
<ErrorNumber>int</ErrorNumber>
<CustomerOrderReference>long</CustomerOrderReference>
<OrderConfirmation>string</OrderConfirmation>
<CustomerDealRef>string</CustomerDealRef>
</objPlaceOrderResponse>




SOAP 1.2

發送

POST/DEMOWebServices2.8/Service.asmxHTTP/1.1
Host:api.efxnow.com
Content-Type:application/soap+xml;charset=utf-8
Content-Length:length
<?xmlversion="1.0"encoding="utf-8"?>
<soap12:Envelopexmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:xsd="http://www.w3.org/2001/XMLSchema"xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<CancelOrderxmlns="https://api.efxnow.com/webservices2.3">
<UserID>string</UserID>
<PWD>string</PWD>
<OrderConfirmation>string</OrderConfirmation>
</CancelOrder>
</soap12:Body>
</soap12:Envelope>

Response:

HTTP/1.1200OK
Content-Type:application/soap+xml;charset=utf-8
Content-Length:length
<?xmlversion="1.0"encoding="utf-8"?>
<soap12:Envelopexmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:xsd="http://www.w3.org/2001/XMLSchema"xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<CancelOrderResponsexmlns="https://api.efxnow.com/webservices2.3">
<CancelOrderResult>
<Success>boolean</Success>
<ErrorDescription>string</ErrorDescription>
<ErrorNumber>int</ErrorNumber>
<CustomerOrderReference>long</CustomerOrderReference>
<OrderConfirmation>string</OrderConfirmation>
<CustomerDealRef>string</CustomerDealRef>
</CancelOrderResult>
</CancelOrderResponse>
</soap12:Body>
</soap12:Envelope>

1. get是從伺服器上獲取數據,post是向伺服器傳送數據。 get 和 post只是一種傳遞數據的方式,get也可以把數據傳到伺服器,他們的本質都是發送請求和接收結果。只是組織格式和數據量上面有差別,http協議裡面有介紹

2. get是把參數數據隊列加到提交表單的ACTION屬性所指的URL中,值和表單內各個欄位一一對應,在URL中可以看到。post是通過HTTP post機制,將表單內各個欄位與其內容放置在HTML HEADER內一起傳送到ACTION屬性所指的URL地址。用戶看不到這個過程。
因為get設計成傳輸小數據,而且最好是不修改伺服器的數據,所以瀏覽器一般都在地址欄裡面可以看到,但post一般都用來傳遞大數據,或比較隱私的數據,所以在地址欄看不到,能不能看到不是協議規定,是瀏覽器規定的。
3. 對於get方式,伺服器端用Request.QueryString獲取變數的值,對於post方式,伺服器端用Request.Form獲取提交的數據。
沒明白,怎麼獲得變數和你的伺服器有關,和get或post無關,伺服器都對這些請求做了封裝
4. get傳送的數據量較小,不能大於2KB。post傳送的數據量較大,一般被默認為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為100KB。
post基本沒有限制,我想大家都上傳過文件,都是用post方式的。只不過要修改form裡面的那個type參數
5. get安全性非常低,post安全性較高。
如果沒有加密,他們安全級別都是一樣的,隨便一個監聽器都可以把所有的數據監聽到,不信你自己下一個監聽網路資源的軟體,

⑼ java中get和post的區別

GET 是在URL路徑直接拼接參數
POST是不在RUL路徑里拼接,也就是瀏覽器地址欄不可以看到參數。
GET不能提交過大的數據
POST能提交更大的數據
GET不安全
POST更安全。

⑽ java get和post獲取參數的區別

  1. get是從伺服器上獲取數據,post是向伺服器傳送數據。

  2. 對於get方式,伺服器端用Request.QueryString獲取變數的值,對於post方式,伺服器端用Request.Form獲取提交的數據。

  3. GET方式提交的數據最多隻能有1024位元組,而POST則沒有此限制。

  4. 安全性問題。

    正如在中提到,使用Get的時候,參數會顯示在地址欄上,而Post不會。所以,如果這些數據是中文數據而且是非敏感數據,那麼使用get;如果用戶輸入的數據不是中文字元而且包含敏感數據,那麼還是使用post為好。

  5. 在客戶端,Get方式在通過URL提交數據,數據在URL中可以看到;POST方式,數據放置在HTMLHEADER內提交。

熱點內容
愛膚密碼多少錢 發布:2025-07-16 09:52:51 瀏覽:616
如何訪問電腦工作組 發布:2025-07-16 09:39:24 瀏覽:182
動態優先權演算法 發布:2025-07-16 09:39:02 瀏覽:201
火車wifi密碼是多少啊 發布:2025-07-16 09:35:46 瀏覽:756
sql的視圖是從中導出的 發布:2025-07-16 09:31:34 瀏覽:784
安卓如何打開shell窗口 發布:2025-07-16 09:28:09 瀏覽:313
華為榮耀備忘錄文件夾 發布:2025-07-16 09:23:23 瀏覽:972
基於特徵匹配演算法 發布:2025-07-16 09:18:23 瀏覽:46
夢香神奇寶貝伺服器的ip 發布:2025-07-16 09:14:07 瀏覽:212
電子密碼手套箱是什麼 發布:2025-07-16 09:13:27 瀏覽:799