POST請求


上行報文即信息

HTTP的請求是成對兒的,有request就有response。我們稱之為“上行請求”和“下行響應”。不管是哪種請求,都會“報頭”+“報文”的形式傳輸數據

一般上行請求的上行報文是空的,下行響應的下行報文是html的代碼

什么是報頭?用來存放一些信息,比如客戶端的信息,訪問時間,cookie等等

 

 

上行請求一般是沒有報文的,所以下行報文一般都是html代碼

我們使用GET請求的時候,所以的信息參數都在$_GET數組中,POST也是有一個$_POST數組來維護我們的POST請求的信息

POST請求提交表單

我們在url中輸入網址攜帶參數的請求都是GET請求,如果想要發送POST請求,需要借助表單來發起

 <form action="1.php" method="post">
        <p>
            <input type="text" name="userName" placeholder="請輸入用戶名">
        </p>
        <p>
            <input type="password" name="password" placeholder="請輸入密碼">
        </p>
        <p>
            <input type="radio" name="sex" value=""><input type="radio" name="sex" value=""></p>
        <p>
            <input type="submit">
        </p>
    </form>

此時我們的表單一旦提交了,頁面會跳轉到1.php,此時的url地址中並沒有我們提交的信息(query string),數據到哪了?

都在我們HTTP的上行報文中

 

 

formData就是上行請求攜帶的參數

在1.php中可以通過$_POST來獲取這些參數

<?php
    // 得到用戶的數據
    $userName = $_POST["userName"];
    $password = $_POST["password"];
    $sex = $_POST["sex"];

    // 反饋結果
    echo "接收到的表單信息為:<br/>";
    echo "用戶名:".$userName."<br/>";
    echo "密碼:".$password."<br/>";
    echo "性別:".$sex."<br/>";
?>

   

POST請求的優缺點

優點:

  • 安全,URL不會在暴露我們的信息,瀏覽器會保存我們的上下報文,一旦發送過請求后,立即就會銷毀,任何人都無法通過讀你報文來竊取你的信息
  • 傳遞的數據長!理論上POST請求可以發送無窮大的信息,所以,圖片、文件的上傳都是通過POST請求發送的

缺點:

  • POST請求不方便信息共享,如果我們需要分享一篇博客,想把url發送給朋友,如果使用post請求,參數則無法分享,因為url中無法攜帶任何的頁面信息,僅僅只有url的實際地址

什么時候使用POST?什么時候使用GET?

如果程序是通過用戶輸入查詢檢索的時候,一般用GET,便於分享;

如果信息是一些比較敏感的,比如用戶的注冊名稱,密碼,身份證號等等一些敏感的信息,一定要使用post,這樣安全。

GET請求本意就是“得到”的意思,POST請求本意就是“發送”的意思。所以當你的目的是得到更多信息的時候,使用GET,比如我們要根據id查詢某一條信息。如果你的目的是提交,發送,使用post。比如你要提交自己的信息(姓名,年齡,身高,體重...)

 

GET請求就是HTTP的request,POST請求就是HTTP的response。這樣的說法正確嗎?為什么?

這種說法是完全錯誤的,GET請求和POST請求都是上行的請求和下行響應的,也就是都是向服務器發送請求的(request),然后服務器進行對應的請求響應(response)

請求方式

數據位置

是否方便分享

是否安全

GET

URL:1.php?name=小明&age=1

×

POST

上行報文的formData中

×


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM