http中get與post的區別

先簡單的介紹一下getpost

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

l          Post:用來向目的服務器發出請求,要求它接受被附在請求後的實體,並把它當作請求隊列中請求URI所指定資源的附加新子項,Post被設計成用統一的方法實現下列功能:

1.         對現有資源的解釋

2.         向電子公告欄、新聞組、郵件列表或類似討論組發信息。

3.         提交數據塊

4.         通過附加操作來擴展數據庫

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

HTTP請求:getpost方法的區別

             相同點;

l          Getpost對於“post”除非相應裏有cache-control或者expires頭域指示其相應不可緩存)請求的相應是可緩存的;

 

          不同點:

1.         Get是從服務器上獲取數據,post是向服務器傳送數據

2.         Get是把參數數據隊列加到提交表單的action屬性所指定的URL中,值和表單中各個字段一一對應,在URL中可以看到,post是通過HTTP post機制,將表單內各個字段與其內容放置在html header內一起傳送到action屬性所指的URL地址,用戶看不到這個過程;

3.         get傳送的數據量較小,不能大於2kbpost傳送的數據量較大,一般被默認爲不受限制的。但理論上,IIS4中最大量爲80kbIIs5中爲100kb

4.         get安全性非常低;post安全性較高;

5.         get適用於多請求,而保留post僅用於更新站點;

6.         form提交的時候,如果不指定method,則默認爲get請求,form中提交的數據將會附加在url之後,以?與URL分開。字母數字字符原樣發送,但空格轉換爲“+”號,其它符號轉換爲%xx,其中xx爲該符號爲16進製表示的ASCII(或ISO Latin-1)值;

7.         get請求提交的數據放置在HTTP請求協議頭中,而post提交的數據則放在實體數據數據中;

 

 

在表單中適用“post”和“get”區別

                        form裏面,可以適用post也可以適用get。它們都是method的合法取值。但是,postgei方法在適用上至少兩點不同;

1.         get方法通過URL請求來傳遞用戶的輸入。Post方法通過另外的形式。

2.         get方式的提交需要用Request.QueryString來取得變量的值,而post方式提交時,必須通過Request.Form來訪問提交的內容

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章