前端 為何要用POST而非GET

更新於 2024/01/14閱讀時間約 1 分鐘

發送表單用get跟post看起來好像都無所謂,然而事實並非如此,使用GET的風險如下:

安全性問題

機密資訊為何不宜用GET,是因為由GET方法提交的表單會將欄位的key,value顯示於URL上,想像一下如果小明借用你的電腦,查看你的網頁歷史紀錄時就可以看到你的帳密了,多可怕!

再來就是如果有用log存下url紀錄,那你送出的資訊也就會在log中展露無遺。


大小限制

URL在不同瀏覽器上都有其長度限制,在伺服器也一樣,像是nginx的url長度限制:

error code: 414, uri too large


當然用POST還不夠,如果沒有加密的話那如果有人在監聽還是能看到body中的內容,這就是為何需要HTTPS,確保發送的表單內容只有發送者跟接收者能夠解密看到正確明文,避免有人從中偷窺。


那什麼時候該用GET呢?

在做查詢的時候就用GET,這符合restful API,像是產品搜尋或google搜尋。

不過要注意的是查詢帶的querystring會不會太龐大,是不是可能會超過url長度的限制

avatar-img
4會員
10內容數
分享感情與生活的故事,期望我們都能在愛與被愛的路上感到幸福,並且在這個只有活一次的人生裡好好的活成自己喜歡的樣子
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
JHIHLEI LIN的沙龍 的其他內容
在沒有分環境之前,每一隻lambda只有一個code console給所有人一起編輯,開發好了就deploy,根據設定的trigger觸發執行。 現在我們希望能夠在code console開發,然後deploy到不同的stage,目標是不同stage的api gateway能夠調用該lambda的
先須知識: 了解什麼是變數 作用域scope 在Rust中,變數預設是不可變的 let name = "Zoe"; // 預設變數不可變 也就同於Javascript中的const,若想讓變數可變則需要在let後面加上mut關鍵字: let mut name = "Vicky"; nam
When you want to use your non-publish yet package in your other project, you need to do these: step 1 go to package and run : npm link packageNameHe
Magnetic tapes是一個自古就有的技術,至今還是有企業在使用,也有不斷在被改良中。 其特性:容量大低成本保存時間長,讓其仍有利用價值,在特定的情境下可做使用,比如可作為保存歷史資料使用,例如美國NASA,政府機構等等,或作為備份使用,不過要注意其讀寫速度很慢,比固態硬碟如HDD還慢上許多
第一天上班,你需要設定 SSH key,因為你將使用 SSH 來 clone 代碼 Repo。SSH 與 HTTP 的主要差別在於安全性和速度,而 SSH 比 HTTP 更加安全和快速。本篇文章的主要目的是介紹如何在一台電腦上使用 SSH 登入多個 GitHub 和 GitLab 帳戶。 不管你的
雖然lambda本身的概念就是主打無伺服器+各自獨立運行的function,但有時又不免其然的需要共用代碼,像是api可能都需要做權限驗證。 會有這方面的研究是因為公司正好要將app跟web共用的api搬到api gateway去處理,但我馬上就想到會有code reuse的問題,怎麼樣用可維護的
在沒有分環境之前,每一隻lambda只有一個code console給所有人一起編輯,開發好了就deploy,根據設定的trigger觸發執行。 現在我們希望能夠在code console開發,然後deploy到不同的stage,目標是不同stage的api gateway能夠調用該lambda的
先須知識: 了解什麼是變數 作用域scope 在Rust中,變數預設是不可變的 let name = "Zoe"; // 預設變數不可變 也就同於Javascript中的const,若想讓變數可變則需要在let後面加上mut關鍵字: let mut name = "Vicky"; nam
When you want to use your non-publish yet package in your other project, you need to do these: step 1 go to package and run : npm link packageNameHe
Magnetic tapes是一個自古就有的技術,至今還是有企業在使用,也有不斷在被改良中。 其特性:容量大低成本保存時間長,讓其仍有利用價值,在特定的情境下可做使用,比如可作為保存歷史資料使用,例如美國NASA,政府機構等等,或作為備份使用,不過要注意其讀寫速度很慢,比固態硬碟如HDD還慢上許多
第一天上班,你需要設定 SSH key,因為你將使用 SSH 來 clone 代碼 Repo。SSH 與 HTTP 的主要差別在於安全性和速度,而 SSH 比 HTTP 更加安全和快速。本篇文章的主要目的是介紹如何在一台電腦上使用 SSH 登入多個 GitHub 和 GitLab 帳戶。 不管你的
雖然lambda本身的概念就是主打無伺服器+各自獨立運行的function,但有時又不免其然的需要共用代碼,像是api可能都需要做權限驗證。 會有這方面的研究是因為公司正好要將app跟web共用的api搬到api gateway去處理,但我馬上就想到會有code reuse的問題,怎麼樣用可維護的
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
作為一個純後端,不會前端也是正常的事(誤),但該練習的技能線還是得每天練習一點,尤其我是一個前端小廢物,那既然要用Laravel 9 版本來做開發,那就得先試試看vite這個新的工具,基本上這邊就簡單介紹使用方式,另一篇在額外說明Laravel Mix 與 Vite 差別。
Thumbnail
今天想透過這篇文章與各位分享如何透過 Chrome Devtool 的 Performance Tab 來檢測網頁在執行時的各種效能指標,讓網頁的 Runtime Performance 不再成為你 debug 時的瓶頸!
Thumbnail
什麼是 Frontend Infrastructure (Infra) ? 提到前端網頁開發,可能很多人聯想到的都是 UI 畫面切版、動畫特效,甚至認為前端開發者的工作內容「離不開畫面」。但其實前端開發是一個非常廣的領域,同樣身為前端工程師,每個人專注開發的領域可能都不一樣,所打造出的技能樹...
Thumbnail
這是 30 天寫作挑戰的第 15 天。今天要跟大家分享的是:3 個成為前端工程師後,發現的好處
Thumbnail
這是 30 天寫作挑戰的第 14 天。今天要跟大家分享的主題是:從 0 到 1 成為前端工程師應該養成的 3 個寫程式習慣
Thumbnail
這是 30 天寫作挑戰的第 13 天。今天要跟大家分享主題是:從 0 到 1 成為前端工程師的 3 個技巧
Thumbnail
這是 30 天寫作挑戰的第 11 天。今天開始要跟大家分享一系列的「從 0 到 1 成為前端工程師的……」,今天要分享的是:從 0 到 1 成為前端工程師的 3 個訣竅
Thumbnail
如何成為軟體工程師?前端、後端、全端工程師之間的差異?這篇文章推薦給不知該怎麼開始學習的你,學習路線與必備技能一次詳細說明!
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
作為一個純後端,不會前端也是正常的事(誤),但該練習的技能線還是得每天練習一點,尤其我是一個前端小廢物,那既然要用Laravel 9 版本來做開發,那就得先試試看vite這個新的工具,基本上這邊就簡單介紹使用方式,另一篇在額外說明Laravel Mix 與 Vite 差別。
Thumbnail
今天想透過這篇文章與各位分享如何透過 Chrome Devtool 的 Performance Tab 來檢測網頁在執行時的各種效能指標,讓網頁的 Runtime Performance 不再成為你 debug 時的瓶頸!
Thumbnail
什麼是 Frontend Infrastructure (Infra) ? 提到前端網頁開發,可能很多人聯想到的都是 UI 畫面切版、動畫特效,甚至認為前端開發者的工作內容「離不開畫面」。但其實前端開發是一個非常廣的領域,同樣身為前端工程師,每個人專注開發的領域可能都不一樣,所打造出的技能樹...
Thumbnail
這是 30 天寫作挑戰的第 15 天。今天要跟大家分享的是:3 個成為前端工程師後,發現的好處
Thumbnail
這是 30 天寫作挑戰的第 14 天。今天要跟大家分享的主題是:從 0 到 1 成為前端工程師應該養成的 3 個寫程式習慣
Thumbnail
這是 30 天寫作挑戰的第 13 天。今天要跟大家分享主題是:從 0 到 1 成為前端工程師的 3 個技巧
Thumbnail
這是 30 天寫作挑戰的第 11 天。今天開始要跟大家分享一系列的「從 0 到 1 成為前端工程師的……」,今天要分享的是:從 0 到 1 成為前端工程師的 3 個訣竅
Thumbnail
如何成為軟體工程師?前端、後端、全端工程師之間的差異?這篇文章推薦給不知該怎麼開始學習的你,學習路線與必備技能一次詳細說明!