HTTP請求

詳情見:https://www.cnblogs.com/foodoir/p/5911099.html

https://baike.baidu.com/item/http%E8%AF%B7%E6%B1%82%E5%A4%B4/6623287?fr=aladdin
一個HTTP請求報文由? ? ? 請求行(request line)、請求頭部(headers)、空行(blank line)和請求數(shù)據(jù)(request body)4個部分組成。

請求行:

?請求行分為三個部分:請求方法、請求地址URL和HTTP協(xié)議版本,它們之間用空格分割。例如,GET /index.html HTTP/1.1

請求方法:

get:(獲取資源)

? 當客戶端要從服務器中讀取文檔時,當點擊網頁上的鏈接或者通過在瀏覽器的地址欄輸入網址來瀏覽網頁的,使用的都是GET方式。GET方法要求服務器將URL定位的資源放在響應報文的數(shù)據(jù)部分,會送給客戶端。使用GET方法時,請求參數(shù)和對應的值附加在URL后面,利用一個問號‘?’代表URL的結尾與請求參數(shù)的開始,傳遞參數(shù)長度受限制。?

(它的主要作用是從Web服務器獲取一個資源。)

(GET方法的作用在于獲取資源。)


post:(?傳輸實體文本?)

允許客戶端給服務器提供信息較多。POST方法將請求參數(shù)封裝在HTTP請求數(shù)據(jù)中,以名稱/值的形式出現(xiàn),可以傳輸大量數(shù)據(jù),這樣POST方式對傳送的數(shù)據(jù)大小沒有限制,而且也不會顯示在URL中。

(POST方法的主要作用是執(zhí)行操作。)

向指定資源提交數(shù)據(jù)進行處理請求(例如提交表單或者上傳文件)。

(可能導致建立新的資源或者對原有資源的修改。提交的資源放在請求體中。不支持快取。非冪等)


head:(獲得報文首部)

向服務器索與GET請求相一致的響應,只不過響應體將不會被返回。

服務器返回的消息頭應與對應GET請求返回的消息頭相同。因此,這種方法可用于檢查某一資源在向其提交GET請求前是否存在。

(本質和get一樣,但是響應中沒有呈現(xiàn)數(shù)據(jù),而是http的頭信息,主要用來檢查資源或超鏈接的有效性或是否可以可達、檢查網頁是否被串改或更新,獲取頭信息等,特別適用在有限的速度和帶寬下。)

(具體來說:1、判斷類型; 2、查看響應中的狀態(tài)碼,看對象是否存在(響應:請求執(zhí)行成功了,但無數(shù)據(jù)返回); 3、測試資源是否被修改過?? ?HEAD方法和GET方法的區(qū)別: GET方法有實體,HEAD方法無實體。 )


put:(上傳文件)

向指定資源位置上傳其最新內容 。

(這個方法試圖使用包含在請求主體中的內容,向服務器上傳指定的資源。如果激活這個方法,滲透測試員就可以利用它來攻擊應用程序。例如,通過上傳任意一段腳本并在服務器上執(zhí)行該腳本來攻擊應用程序。還有許多其他與攻擊Web應用程序沒有直接關系的HTTP方法。然而,如果激活某些危險的方法,Web服務器可能面臨攻擊風險。)


OPTIONS:(詢問支持的方法)

??OPTIONS方法用來查詢針對請求URL指定資源支持的方法(客戶端詢問服務器可以提交哪些請求方法)

(這種方法要求服務器報告對某一特殊資源有效的HTTP方法。服務器通常返回一個包含Allow消息頭的響應,并在其中列出所有有效的方法。)

請求頭:

Accept:

accept:

這個消息頭用于告訴服務器客戶端愿意接受哪些內容,如圖像類型、辦公文檔格式等。

Accept-Charset:瀏覽器可接受的字符集。? ?

Accept-Encoding:瀏覽器能夠進行解碼的數(shù)據(jù)編碼方式,比如gzip。Servlet能夠向支持gzip的瀏覽器返回經gzip編碼的HTML頁面。許多情形下這可以減少5到10倍的下載時間。

Accept-Language:瀏覽器所希望的語言種類,當服務器能夠提供一種以上的語言版本時要用到。?

referer:

這個消息頭用于指示提出當前請求的原始URL。

(包含一個URL,用戶從該URL代表的頁面出發(fā)訪問當前請求的頁面。)

User-Agent:

這個消息頭提供與瀏覽器或生成請求的其他客戶端軟件有關的信息。

(瀏覽器版本信息、系統(tǒng)信息(反爬蟲))

host:

這個消息頭用于指定出現(xiàn)在所請求的完整URL中的主機名稱。

(初始URL中的主機和端口。 列:localhost:8080)。


cookie:

這個消息頭用于向服務器提交它以前發(fā)布的cookie。

(這是最重要的請求頭信息之一)

(攜帶的cookie,做用戶認證用)

X_Forwarded_for:

是用來識別通過HTTP代理或負載均衡方式連接到Web服務器的客戶端最原始的IP地址的HTTP請求頭字段。

(偽造來源IP)

:X_forwarded_for(重要):可以偽造IP地址。(列:不允許外網訪問,可偽造127.0.0.1)

Authorization:

這個消息頭用于為一種內置HTTP身份驗證向服務器提交證書。

響應頭:

Location:

1.htm //重定向 302

Access-Control-Allow-Origin:

這個消息頭用于指示可否通過跨域Ajax請求獲取資源。

WWW-Authenticate:

這個消息頭用在帶401狀態(tài)碼的響應中,提供與服務器所支持的身份驗證類型有關的信息。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容