超文本傳輸協議(HTTP,HyperText Transfer Protocol)是互聯網上應用最為廣泛的一種網絡協議。所有的WWW文件都必須遵守這個標準。
瀏覽器負責發起請求
服務器在 80 端口接收請求
服務器負責返回內容(響應)
瀏覽器負責下載響應內容
如何利用Chrome查看HTTP請求內容
打開 Network
地址欄輸入網址
在 Network 點擊,查看 request,點擊「view source」
如果有請求的第四部分,那么在 FormData 或 Payload 里面可以看到
1 動詞 路徑 協議/版本
2 Key1: value1
2 Key2: value2
2 Key3: value3
2 Content-Type: application/x-www-form-urlencoded
2 Host: www.baidu.com
2 User-Agent: curl/7.54.0
3
4 要上傳的數據
-------------
請求最多包含四部分,最少包含三部分。(也就是說第四部分可以為空)
第三部分永遠都是一個回車(\n)
動詞有 GET POST PUT PATCH DELETE HEAD OPTIONS 等
這里的路徑包括「查詢參數」,但不包括「錨點」
如果你沒有寫路徑,那么路徑默認為 /
第 2 部分中的 Content-Type 標注了第 4 部分的格式
如何利用Chrome查看HTTP響應內容
1 協議/版本號 狀態碼 狀態解釋
2 Key1: value1
2 Key2: value2
2 Content-Length: 17931
2 Content-Type: text/html
3
4 要下載的內容
命令行中CURL的使用
curl -s -v -H "Frank: xxx" -- "https://www.baidu.com"
請求的內容為
GET / HTTP/1.1
Host: www.baidu.com
User-Agent: curl/7.54.0
Accept: */*
Frank: xxx
curl -X POST -s -v -H "Frank: xxx" -- "https://www.baidu.com"
請求的內容為
POST / HTTP/1.1
Host: www.baidu.com
User-Agent: curl/7.54.0
Accept: */*
Frank: xxx
curl -X POST -d "1234567890" -s -v -H "Frank: xxx" -- "https://www.baidu.com"
請求的內容為
POST / HTTP/1.1
Host: www.baidu.com
User-Agent: curl/7.54.0
Accept: */*
Frank: xxx
Content-Length: 10
Content-Type: application/x-www-form-urlencoded
1234567890
請求的格式
1 動詞 路徑 協議/版本
2 Key1: value1
2 Key2: value2
2 Key3: value3
2 Content-Type: application/x-www-form-urlencoded
2 Host: www.baidu.com
2 User-Agent: curl/7.54.0
3
4 要上傳的數據
請求最多包含四部分,最少包含三部分。(也就是說第四部分可以為空)
第三部分永遠都是一個回車(\n)
動詞有 GET POST PUT PATCH DELETE HEAD OPTIONS 等
這里的路徑包括「查詢參數」,但不包括「錨點」
如果你沒有寫路徑,那么路徑默認為 /
第 2 部分中的 Content-Type 標注了第 4 部分的格式