HTTP協議(6)HTTP請求方法

對於HTTP請求報文,下面介紹一些須要重點了解的內容。
首先,在請求行中比較重要的是請求方法。請求方法用於客戶端向服務端傳送數據,主要有Get和Post兩種方法。
Get方法經過URL向服務器發送數據,因此使用Get方法傳遞的數據會顯示在瀏覽器地址欄中。因爲瀏覽器對URL的長度會有限制,因此Get方法一般用於向服務器發送少許數據。好比請求頭「GET index.php?id=1 HTTP/1.1」,表示客戶端請求訪問服務器的index.php頁面,並用Get方法向服務器傳遞數據「id=1」,id是在服務器端事先定義好的一個參數,數值1就是客戶端所傳送的數據。若是要同時傳遞多個參數,參數之間以&分隔,如id=1&name=admin。
Post方法將要發送的數據放在HTTP請求報文的正文中,因此傳遞的數據不會顯示在瀏覽器地址欄中。能夠用於向服務器發送大量數據,如用戶登陸、上傳文件、提交留言等都會使用Post方法。典型的Post請求報文以下圖所示。
HTTP協議(6)HTTP請求方法php

例題1 BugKu web基礎$_GET
連接:http://123.206.87.240:8002/get/
點開連接以後,直接給出了代碼,用get方法接收what參數的值,只要what的值爲flag,那麼就能夠獲得flag。web

$what=$_GET['what'];
 echo $what;
 if($what=='flag')
 echo 'flag{****}';

直接經過地址欄向服務端發送數據便可。
HTTP協議(6)HTTP請求方法瀏覽器

例題2 BugKu Web基礎$_POST
連接:http://123.206.87.240:8002/post/
與上一題相似,用post方法接收what參數的值。服務器

$what=$_POST['what'];
echo $what;
if($what=='flag')
echo 'flag{****}';

這裏就涉及到如何經過post方法向服務端發送數據。推薦在firefox瀏覽器中安裝hackbar插件,經過設置項中的「附加組件」搜索並安裝便可。
安裝完成後,經過查看元素或F12均可以調出hackbar。而後載入連接,併發送post數據便可。
HTTP協議(6)HTTP請求方法併發

相關文章
相關標籤/搜索