GET 或 POST 方法:了解差異並知道何時使用它們
P粉463811100
P粉463811100 2023-10-14 22:54:00
0
2
635

使用 GETPOST 方法有什麼不同?哪一種比較安全?它們各自的優缺點是什麼?

(類似問題)

P粉463811100
P粉463811100

全部回覆(2)
P粉884548619

當使用者在表單中輸入資訊並按一下「提交」時,可以透過兩種方式將資訊從瀏覽器傳送到伺服器:在 URL 中,或在 HTTP 請求正文中。

前面範例中使用的 GET 方法將名稱/值對附加到 URL。不幸的是,URL 的長度是有限的,因此此方法僅在參數很少的情況下才有效。如果表單使用大量參數,或者參數包含大量數據,則 URL 可能會被截斷。此外,在 URL 上傳遞的參數在瀏覽器的位址欄位中可見,而不是顯示密碼的最佳位置。

GET 方法的替代方法是 POST 方法。此方法將名稱/值對打包在 HTTP 請求的正文中,這使得 URL 更清晰,並且對表單輸出沒有大小限制。它也更安全。

P粉002023326

這不是安全問題。 HTTP 協定將 GET 類型的請求定義為冪等,而 POST 可能有副作用。用簡單的英語來說,這意味著 GET 用於查看某些內容而不更改它,而 POST 用於更改某些內容。例如,搜尋頁面應使用 GET,而更改密碼的表單應使用 POST。

另外,請注意 PHP 有點混淆了這些概念。 POST 請求從查詢字串和請求正文取得輸入。 GET 請求只是從查詢字串取得輸入。所以POST 請求是GET 請求的超集;您可以在POST 請求中使用$_GET,甚至可以在$_POST$_GET 中使用相同名稱的參數這意味著不同的事情。

例如,假設您有一個用於編輯文章的表單。文章 ID 可能位於查詢字串中(因此可以透過 $_GET['id'] 取得),但假設您想要更改文章 ID。然後,新的 ID 可能會出現在請求正文中 ($_POST['id'])。好吧,也許這不是最好的例子,但我希望它能說明兩者之間的差異。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板