青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

兔子的技術博客

兔子

   :: 首頁 :: 聯系 :: 聚合  :: 管理
  202 Posts :: 0 Stories :: 43 Comments :: 0 Trackbacks

留言簿(10)

最新評論

閱讀排行榜

評論排行榜

1HTTP請求格式:

<request line>

<headers>

<blank line>

[<request-body>]

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

2.GET與POST區別

HTTP定義了與服務器交互的不同方法,最基本的方法是 GET  POST.

HTTP-GET和HTTP-POST是使用HTTP的標準協議動詞,用于編碼和傳送變量名/變量值對參數,并且使用相關的請求語義。每個HTTP-GET和HTTP-POST都由一系列HTTP請求頭組成,這些請求頭定義了客戶端從服務器請求了什么,而響應則是由一系列HTTP應答頭和應答數據組成,如果請求成功則返回應答。
  HTTP-GET以使用MIME類型application/x-www-form-urlencoded的urlencoded文本的格式傳遞參數。Urlencoding是一種字符編碼,保證被傳送的參數由遵循規范的文本組成,例如一個空格的編碼是"%20"。附加參數還能被認為是一個查詢字符串。
  與HTTP-GET類似,HTTP-POST參數也是被URL編碼的。然而,變量名/變量值不作為URL的一部分被傳送,而是放在實際的HTTP請求消息內部被傳送。

(1)get是從服務器上獲取數據,post是向服務器傳送數據。

(1)   在客戶端,Get方式在通過URL提交數據,數據URL可以看到;POST方式,數據放置在HTML HEADER提交。

(2) 對于get方式,服務器端用Request.QueryString獲取變量的值,對于post方式,服務器端用Request.Form獲取提交的數據。

(2)   GET方式提交的數據最多只能有1024字節,而POST沒有此限制

(3)   安全性問題。正如在(1)中提到,使用 Get 的時候,參數會顯示在地址欄上,而 Post 不會。所以,如果這些數據是中文數據而且是非敏感數據,那么使用 get;如果用戶輸入的數據不是中文字符而且包含敏感數據,那么還是使用 post為好。

注:所謂安全的意味著該操作用于獲取信息而非修改信息。冪等的意味著對同一 URL 的多個請求應該返回同樣的結果。完整的定義并不像看起來那樣嚴格。換句話說,GET 請求一般不應產生副作用。從根本上講,其目標是當用戶打開一個鏈接時,她可以確信從自身的角度來看沒有改變資源。比如,新聞站點的頭版不斷更新。雖然第二次請求會返回不同的一批新聞,該操作仍然被認為是安全的和冪等的,因為它總是返回當前的新聞。反之亦然。POST 請求就不那么輕松了。POST 表示可能改變服務器上的資源的請求。仍然以新聞站點為例,讀者對文章的注解應該通過 POST 請求實現,因為在注解提交之后站點已經不同了(比方說文章下面出現一條注解)。

下面舉一個簡單的例子來說明它們的區別:

<!-分別通過get和post方式提交表單--> 
<FORM ACTION="getpost.asp" METHOD="get"> 
<INPUT TYPE="text" NAME="Text" VALUE="
http://wxf0701.cnblogs.com//
<INPUT TYPE="submit" VALUE="Get方式"></INPUT> 
</FORM> 
<BR> 
<FORM ACTION="getpost.asp" METHOD="post"> 
<INPUT TYPE="text" NAME="Text" VALUE="
http://wxf0701.cnblogs.com/
<INPUT TYPE="submit" VALUE="Post方式"></INPUT> 
</FORM> 
<BR>

<% If Request.QueryString("Text") <> "" Then %> 
通過get方式傳遞的字符串是: "<B><%= Request.QueryString("Text") %></B>"<BR> 
<% End If %>

<% If Request.Form("Text") <> "" Then %> 
通過Post方式傳遞的字符串是: "<B><%= Request.Form("Text") %></B>"<BR> 
<% End If %>

(http://blog.csdn.net/notbadgirl/article/details/3876096)

相關資料
如何使用SOCKET 發送HTTP1.1 GET POST請求包 

HTTP報文是面向文本的,報文中的每一個字段都是一些ASCII碼串,各個字段的長度是不確定的。HTTP有兩類報文:請求報文和響應報文。
請求報文
一個HTTP請求報文由請求行(request line)、請求頭部(header)、空行和請求數據4個部分組成,下圖給出了請求報文的一般格式。

 (1)請求行
請求行由請求方法字段、URL字段和HTTP協議版本字段3個字段組成,它們用空格分隔。例如,GET /index.html HTTP/1.1。
HTTP協議的請求方法有GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT。這里介紹最常用的GET方法和POST方法。
GET:當客戶端要從服務器中讀取文檔時,使用GET方法。GET方法要求服務器將URL定位的資源放在響應報文的數據部分,回送給客戶端。使用GET方法時,請求參數和對應的值附加在URL后面,利用一個問號(“?”)代表URL的結尾與請求參數的開始,傳遞參數長度受限制。例如,/index.jsp?id=100&op=bind。
POST:當客戶端給服務器提供信息較多時可以使用POST方法。POST方法將請求參數封裝在HTTP請求數據中,以名稱/值的形式出現,可以傳輸大量數據,可用來傳送文件。
(2)請求頭部
請求頭部由關鍵字/值對組成,每行一對,關鍵字和值用英文冒號“:”分隔。請求頭部通知服務器有關于客戶端請求的信息,典型的請求頭有:
User-Agent:產生請求的瀏覽器類型。
Accept:客戶端可識別的內容類型列表。
Host:請求的主機名,允許多個域名同處一個IP地址,即虛擬主機。
(3)空行
最后一個請求頭之后是一個空行,發送回車符和換行符,通知服務器以下不再有請求頭。
對于一個完整的http請求來說空行是必須的,否則服務器會認為本次請求的數據尚未完全發送到服務器,處于等待狀態。
(4)請求數據
請求數據不在GET方法中使用,而是在POST方法中使用。POST方法適用于需要客戶填寫表單的場合。與請求數據相關的最常使用的請求頭是Content-Type和Content-Length。
(5)請求示例
POST:
POST報文頭如下:

POST /sn/index.php HTTP/1.1
Accept: */*
Accept-Language: zh-cn
host: localhost
Content-Type: application/x-www-form-urlencoded
Content-Length: 12
Connection:close
sn=123&n=asa
在http頭后邊有一空行,空行后邊接著發送post數據,長度通過Content-Length: 12
指出,此post數據中包含兩項
sn=123
n=asa
其中:Content-Type: application/x-www-form-urlencoded 指定POST數據的編碼類型
Content-Length: 12 POST數據的長度
GET:
GET報問頭如下:
GET /sn/index.php?sn=123&n=asa HTTP/1.1
Accept: */*
Accept-Language: zh-cn
host: localhost
Content-Type: application/x-www-form-urlencoded
Content-Length: 12
Connection:close
示例代碼:
 1 void MEF_Set_Http_Header(MEF_Http_Action_t method, S8 * action, S8 * server, S8 * msg_body, S8 * head, U8 connect_type)  
 2 {
 3         S8 tmp_buf[20];
 4         const S8 * http_methods_table[MEF_TOTAL_HTTP_ACTIONS] = {"GET", "POST", "HEAD", "PUT", "OPTIONS", "DELETE", "TRACE", "CONNECT"};
 5 
 6         sprintf(head,"%s ", http_methods_table[method]);
 7         if(action)
 8         {
 9                 strcat(head, action);  
10         }
11 
12         strcat(head," HTTP/1.1");  
13         strcat(head,"/r/n");  
14 
15         strcat(head,"Accept:*/*");  
16         strcat(head,"/r/n");  
17 
18         strcat(head,"User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");  
19         strcat(head,"/r/n");  
20 
21         strcat(head,"Host: ");  
22         strcat(head,server);   
23         strcat(head,"/r/n");  
24 
25         if(method == MEF_HTTP_POST)
26         {
27                 strcat(head,"Content-Type: application/x-www-form-urlencoded");  
28                 strcat(head,"/r/n");  
29         }
30 
31         if(method == MEF_HTTP_POST)
32         {
33                 strcat(head, "Content-Length: ");
34                 sprintf(tmp_buf, "%d", strlen(msg_body));
35                 strcat(head, tmp_buf);
36                 strcat(head,"/r/n");  
37         }
38         if(connect_type == 1)
39                 strcat(head,"Connection: Keep-Alive");
40         else
41                 strcat(head,"Connection: close");
42                 
43         strcat(head,"/r/n");  
44         strcat(head,"/r/n");  
45         
46         if(method == MEF_HTTP_POST)
47         {
48                 if(msg_body)
49                 {
50                         strcat(head,msg_body);  
51                 }
52         }
53 } 

轉自:http://blog.csdn.net/yc0188/article/details/4741871
posted on 2012-09-12 13:54 會飛的兔子 閱讀(3597) 評論(1)  編輯 收藏 引用 所屬分類: 非C++技術資料

Feedback

# re: http協議中get和post的區別(轉) 2014-05-16 16:42 aylht
寫的非常好,呵呵,意猶未盡啊,如果再加一部分http響應報文的相關內容就絕對棒了!
謝謝!  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美成人一区二区三区在线观看| 亚洲大胆人体在线| 亚洲国产日韩美| 蜜臀99久久精品久久久久久软件| 亚洲一区二区三区激情| 国产精品美女诱惑| 伊人久久婷婷色综合98网| 久久国产乱子精品免费女 | 久久久九九九九| 国产亚洲精品激情久久| 午夜视频在线观看一区| 亚洲欧美日韩久久精品| 欧美三级中文字幕在线观看| 亚洲精品国产精品久久清纯直播 | 理论片一区二区在线| 欧美一进一出视频| 国语精品中文字幕| 久久综合九色| 久久久久国产精品麻豆ai换脸| 国产三级精品三级| 免费91麻豆精品国产自产在线观看| 欧美主播一区二区三区美女 久久精品人| 国产午夜亚洲精品羞羞网站 | 国模大胆一区二区三区| 久久嫩草精品久久久精品一| 老牛嫩草一区二区三区日本| 亚洲精品你懂的| 一区二区三区国产盗摄| 国产日韩在线看| 欧美激情亚洲激情| 国产精品成人观看视频免费| 久久色在线播放| 久久久久国色av免费看影院| 99精品久久久| 欧美亚洲在线视频| 日韩视频在线永久播放| 亚洲在线视频免费观看| 亚洲高清影视| 国产精品99久久久久久宅男| 精品电影在线观看| 亚洲日本电影在线| 国产午夜亚洲精品不卡| 亚洲破处大片| 一区二区在线观看av| 亚洲国产精品久久人人爱蜜臀| 亚洲人精品午夜在线观看| 国产精品推荐精品| 亚洲欧洲精品一区二区三区波多野1战4| 亚洲最新视频在线| 亚洲视频精品在线| 欧美精品一区在线播放| 亚洲欧美国产不卡| 欧美成年人在线观看| 久久久九九九九| 欧美日韩网址| 欧美国产免费| 黑人极品videos精品欧美裸| 亚洲精品在线一区二区| 激情成人av在线| 亚洲男人的天堂在线| 亚洲伦理网站| 午夜精品久久久久久久| 亚洲视频你懂的| 欧美激情视频一区二区三区免费 | 欧美在线日韩在线| 亚洲电影免费观看高清完整版在线观看 | 久久av一区二区三区| 亚洲精品久久久久| 欧美在线视屏| 午夜日韩激情| 国产精品久久久久久久久果冻传媒| 亚洲国产美国国产综合一区二区| 国产欧美日韩三级| 国产精品99久久不卡二区| 这里只有精品在线播放| 欧美夫妇交换俱乐部在线观看| 免费欧美日韩| 在线精品一区| 久久综合狠狠综合久久综青草| 久久久久久夜| 狠狠久久婷婷| 久久精品国产一区二区三| 久久天堂国产精品| 亚洲高清视频一区| 欧美v日韩v国产v| 亚洲国产成人久久综合| 亚洲国产va精品久久久不卡综合| 久久野战av| 亚洲高清自拍| 99热精品在线观看| 欧美1区免费| 亚洲国产经典视频| 狠狠色丁香婷婷综合| 久久久久久亚洲精品不卡4k岛国| 久久综合中文| 亚洲欧美成人网| 欧美亚洲在线视频| 亚洲欧美中日韩| 在线一区视频| 99ri日韩精品视频| 亚洲免费婷婷| 国产一区亚洲一区| 久久视频精品在线| 91久久精品日日躁夜夜躁欧美| 99视频精品在线| 国产精品扒开腿爽爽爽视频| 日韩亚洲精品在线| 亚洲国产婷婷香蕉久久久久久99| 欧美超级免费视 在线| 这里只有精品在线播放| 美女日韩欧美| 亚洲一区视频在线观看视频| 国产无一区二区| 另类天堂视频在线观看| 一本色道88久久加勒比精品| 久久亚洲综合网| 日韩一级大片| 欧美深夜福利| 欧美另类在线观看| 亚洲一区二区三区四区中文| 欧美午夜精品理论片a级按摩| 日韩西西人体444www| 欧美在线国产| 日韩视频一区二区在线观看 | 久久国产一二区| 91久久国产自产拍夜夜嗨| 久久av红桃一区二区小说| 1024成人网色www| 欧美区视频在线观看| 欧美中在线观看| 亚洲视频第一页| 欧美激情国产高清| 久久久999精品免费| 亚洲视频免费在线| 久久免费国产精品1| 欧美国产亚洲精品久久久8v| 在线看片日韩| 欧美精品在线观看播放| 久久精品五月婷婷| 亚洲小说欧美另类社区| 亚洲国产成人在线视频| 久久久久免费| 午夜视频久久久| 99综合在线| 黄色一区二区三区| 国产人妖伪娘一区91| 欧美深夜影院| 欧美高清视频在线| 欧美另类专区| 国产精品美女午夜av| 国产午夜精品全部视频播放| 国产在线一区二区三区四区| 影音先锋一区| 亚洲精品一区二区三区福利| 99在线|亚洲一区二区| 亚洲一二三区在线| 亚洲欧美一区二区视频| 久久gogo国模裸体人体| 美女诱惑一区| 欧美国产先锋| 亚洲天堂免费观看| 国产欧美一区在线| 亚洲欧美三级伦理| 亚洲最快最全在线视频| 男人的天堂亚洲在线| 国产日本欧美在线观看| 国产欧美一区二区三区视频| 国产一区香蕉久久| 亚洲人成免费| 亚洲欧美日韩一区二区三区在线观看 | 欧美二区在线看| 亚洲免费成人av电影| 亚洲欧美综合国产精品一区| 久久中文字幕导航| 国产精品国产三级国产普通话99 | 欧美一区二区高清| 一区二区亚洲精品| 欧美不卡高清| 久久狠狠亚洲综合| 亚洲福利视频二区| 一区二区欧美亚洲| 久久影院午夜论| 欧美午夜理伦三级在线观看| 国产欧美日韩一区二区三区在线观看| 亚洲国产另类精品专区| 亚洲男人的天堂在线aⅴ视频| 久久综合导航| 亚洲视频福利| 欧美精品一区二区三区一线天视频 | 亚洲欧美偷拍卡通变态| 欧美h视频在线| 国产一区二区三区最好精华液| 99精品视频免费观看视频| 美女亚洲精品| 亚洲欧美国产日韩中文字幕| 欧美人与性禽动交情品 | 国产亚洲第一区| 一区二区三区欧美激情| 亚洲欧美一区二区三区久久| 欧美激情亚洲视频|