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

兔子的技術(shù)博客

兔子

   :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
  202 Posts :: 0 Stories :: 43 Comments :: 0 Trackbacks

留言簿(10)

最新評論

閱讀排行榜

評論排行榜

1HTTP請求格式:

<request line>

<headers>

<blank line>

[<request-body>]

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

2.GET與POST區(qū)別

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

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

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

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

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

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

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

注:所謂安全的意味著該操作用于獲取信息而非修改信息。冪等的意味著對同一 URL 的多個(gè)請求應(yīng)該返回同樣的結(jié)果。完整的定義并不像看起來那樣嚴(yán)格。換句話說,GET 請求一般不應(yīng)產(chǎn)生副作用。從根本上講,其目標(biāo)是當(dāng)用戶打開一個(gè)鏈接時(shí),她可以確信從自身的角度來看沒有改變資源。比如,新聞?wù)军c(diǎn)的頭版不斷更新。雖然第二次請求會返回不同的一批新聞,該操作仍然被認(rèn)為是安全的和冪等的,因?yàn)樗偸欠祷禺?dāng)前的新聞。反之亦然。POST 請求就不那么輕松了。POST 表示可能改變服務(wù)器上的資源的請求。仍然以新聞?wù)军c(diǎn)為例,讀者對文章的注解應(yīng)該通過 POST 請求實(shí)現(xiàn),因?yàn)樵谧⒔馓峤恢笳军c(diǎn)已經(jīng)不同了(比方說文章下面出現(xiàn)一條注解)。

下面舉一個(gè)簡單的例子來說明它們的區(qū)別:

<!-分別通過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)

相關(guān)資料
如何使用SOCKET 發(fā)送HTTP1.1 GET POST請求包 

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

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

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頭后邊有一空行,空行后邊接著發(fā)送post數(shù)據(jù),長度通過Content-Length: 12
指出,此post數(shù)據(jù)中包含兩項(xiàng)
sn=123
n=asa
其中:Content-Type: application/x-www-form-urlencoded 指定POST數(shù)據(jù)的編碼類型
Content-Length: 12 POST數(shù)據(jù)的長度
GET:
GET報(bào)問頭如下:
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 } 

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

Feedback

# re: http協(xié)議中g(shù)et和post的區(qū)別(轉(zhuǎn)) 2014-05-16 16:42 aylht
寫的非常好,呵呵,意猶未盡啊,如果再加一部分http響應(yīng)報(bào)文的相關(guān)內(nèi)容就絕對棒了!
謝謝!  回復(fù)  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲一区影院| 亚洲欧美久久久| 一区二区欧美国产| 亚洲国产老妈| 亚洲人成在线观看一区二区| 亚洲精品在线视频| 中文精品一区二区三区 | 国产一区二区看久久| 国产精品一区一区| 欧美淫片网站| 蜜乳av另类精品一区二区| 欧美激情一区二区| 国产精品视频网址| 韩国三级电影久久久久久| 亚洲国产精品va| 亚洲一区999| 久久野战av| 亚洲欧洲日韩综合二区| 夜夜嗨av一区二区三区免费区| 亚洲欧美日韩网| 久久亚洲一区二区三区四区| 欧美日韩亚洲不卡| 尤物九九久久国产精品的特点| 99视频在线观看一区三区| 欧美在线观看一区| 欧美电影免费观看高清| 亚洲在线视频网站| 欧美日韩精品免费观看视一区二区| 一区二区三区**美女毛片| 亚洲欧美另类国产| 欧美wwwwww| 国产精品一区免费在线观看| 亚洲精品一区在线| 久久亚洲一区二区| 99亚洲视频| 久久精品中文字幕免费mv| 欧美精品一区在线| 国产尤物精品| 亚洲一区三区电影在线观看| 欧美激情一区二区三区在线视频观看| 亚洲图片在区色| 欧美激情一区二区三区在线视频观看 | 国产精品久久999| 亚洲精品婷婷| 欧美大片在线观看| 久久精品在线观看| 国产午夜久久久久| 欧美一区二区三区在线观看| 亚洲免费成人| 欧美日韩免费区域视频在线观看| 亚洲国产一区二区精品专区| 久热精品在线视频| 欧美综合第一页| 国内精品久久久久影院薰衣草| 新狼窝色av性久久久久久| 亚洲少妇中出一区| 国产精品男人爽免费视频1 | 亚洲一区二区在线视频| 一本久道久久综合狠狠爱| 欧美成人一区二区三区在线观看 | 免费日韩成人| 欧美一区二区三区四区高清| 国产亚洲欧美一级| 老司机成人网| 欧美大胆a视频| 99精品国产热久久91蜜凸| 亚洲精品免费在线播放| 欧美日韩免费看| 亚洲欧美日韩综合一区| 午夜亚洲视频| 亚洲电影免费观看高清| 欧美xx视频| 欧美精品aa| 一区二区三区精品| 一区二区三区日韩欧美精品| 国产精品入口福利| 亚洲黄色三级| 嫩模写真一区二区三区三州| 在线视频国产日韩| 欧美福利专区| 欧美激情综合在线| 亚洲欧美影音先锋| 亚洲线精品一区二区三区八戒| 欧美人交a欧美精品| 午夜精品久久久久| 久久久久国内| 一区二区三区免费观看| 一本色道久久综合亚洲精品按摩| 国产精品你懂的| 久久夜色精品国产欧美乱| 欧美+亚洲+精品+三区| 午夜一级在线看亚洲| 久热精品视频| 午夜久久tv| 欧美电影打屁股sp| 久久成人18免费观看| 嫩草影视亚洲| 久久国产免费| 欧美91福利在线观看| 欧美一区二区三区精品| 欧美成人小视频| 久久久久久久久久久成人| 欧美精品99| 久久午夜电影网| 欧美三级乱码| 亚洲电影免费观看高清完整版在线观看| 欧美性理论片在线观看片免费| 久久精品亚洲精品| 欧美午夜精品伦理| 亚洲人成网在线播放| 国产精品一区在线观看你懂的| 欧美成人精品一区二区三区| 国产日韩一区二区三区在线播放 | 一区二区三区日韩精品视频| 亚洲欧美日本在线| 亚洲区在线播放| 性色一区二区三区| 亚洲字幕一区二区| 欧美日韩第一区日日骚| 欧美黄色日本| 1769国产精品| 久久久久天天天天| 久久伊人一区二区| 国产区在线观看成人精品| 一本色道久久综合亚洲精品不| 亚洲另类一区二区| 欧美国产91| 亚洲激情综合| 亚洲精品在线三区| 欧美国产日韩一区二区三区| 欧美福利影院| 亚洲乱码精品一二三四区日韩在线| 久久综合网络一区二区| 欧美极品一区| 亚洲精品你懂的| 亚洲国产一区二区三区在线播| 久久综合久久综合这里只有精品| 久久婷婷久久一区二区三区| 国产一区二区三区在线观看视频 | 欧美激情第4页| 亚洲电影专区| 你懂的一区二区| 亚洲国产精品一区在线观看不卡 | 欧美综合国产精品久久丁香| 欧美日韩精选| 一区二区三区国产在线观看| 亚洲一区二区精品在线观看| 欧美性视频网站| 欧美一级大片在线免费观看| 久久久精品一区| 亚洲二区视频| 欧美日韩国产影院| 亚洲婷婷在线| 美女视频网站黄色亚洲| 99riav1国产精品视频| 国产精品高潮粉嫩av| 性欧美1819sex性高清| 欧美成人亚洲成人| 亚洲一二三区在线观看| 国内成+人亚洲| 欧美激情精品久久久六区热门 | 欧美日韩hd| 亚洲国产精品va在线看黑人| 亚洲香蕉成视频在线观看| 国产麻豆日韩| 欧美大片一区| 亚洲男人的天堂在线aⅴ视频| 久久久久久网址| 一区二区三欧美| 狠狠色综合播放一区二区| 欧美大片在线观看| 亚洲免费网站| 91久久久久久国产精品| 久久九九免费| 亚洲一区二区三区四区在线观看 | 国内自拍一区| 欧美日韩精品久久| 久久久999精品免费| 99在线精品观看| 蜜桃视频一区| 亚洲欧美日韩在线观看a三区| 在线观看成人小视频| 国产精品毛片va一区二区三区 | 欧美不卡视频一区发布| 亚洲一级二级| 亚洲精品一区二区三区不| 国产真实乱偷精品视频免| 欧美午夜剧场| 一区二区三区波多野结衣在线观看| 国产尤物精品| 国产精品免费观看视频| 欧美激情导航| 久久婷婷丁香| 午夜精品短视频| 亚洲精选视频免费看| 欧美福利影院| 欧美刺激性大交免费视频| 久久精品国产欧美亚洲人人爽| 亚洲天堂第二页| 亚洲毛片播放|