HTTP POST和GET的区别[转]

it2022-05-05  103

http://www.cppblog.com/woaidongmao/archive/2008/05/29/51476.aspx

1、HTTP 只有POST和GET 两种命令模式;

2、POST是被设计用来向上放东西的,而GET是被设计用来从服务器取东西的,GET也能够向服务器传送较少的数据,而Get之所以也能传送数据,只是用来设计告诉服务器,你到底需要什么样的数据.POST的信息作为HTTP 请求的内容,而GET是在HTTP 头部传输的;

3、POST与GET在HTTP 中传送的方式不同,GET的参数是在HTTP 的头部传送的,而Post的数据则是在HTTP 请求的内容里传送;

4、POST传输数据时,不需要在URL中显示出来,而GET方法要在URL中显示;

5、GET方法由于受到URL长度的限制,只能传递大约1024字节;POST传输的数据量大,可以达到2M,而根据微软方面的说法,微软对用 Request.Form() 可接收的最大数据有限制,IIS 4 中为 80 KB 字节,IIS 5 中为 100 KB 字节;

6、SOAP是依赖于HTTP POST模式实现的;

 

例子:

HTTP GET

发送

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

回复

HTTP/1.1 200 OKContent-Type: text/xml; charset=utf-8Content-Length: length

<?xml version="1.0" encoding="utf-8"?><objPlaceOrderResponse xmlns="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/CancelOrder HTTP/1.1Host: api.efxnow.comContent-Type: application/x-www-form-urlencodedContent-Length: length

UserID=string&PWD=string&OrderConfirmation=string

回复

HTTP/1.1 200 OKContent-Type: text/xml; charset=utf-8Content-Length: length

<?xml version="1.0" encoding="utf-8"?><objPlaceOrderResponse xmlns="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.asmx HTTP/1.1Host: api.efxnow.comContent-Type: application/soap+xml; charset=utf-8Content-Length: length

<?xml version="1.0" encoding="utf-8"?><soap12:Envelope xmlns: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>    <CancelOrder xmlns="https://api.efxnow.com/webservices2.3">      <UserID>string</UserID>      <PWD>string</PWD>      <OrderConfirmation>string</OrderConfirmation>    </CancelOrder>  </soap12:Body></soap12:Envelope>

回复

HTTP/1.1 200 OKContent-Type: application/soap+xml; charset=utf-8Content-Length: length

<?xml version="1.0" encoding="utf-8"?><soap12:Envelope xmlns: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>    <CancelOrderResponse xmlns="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>

转载于:https://www.cnblogs.com/jingdian1956/p/3266502.html

相关资源:httppost和httpget需要的jar包

最新回复(0)