2017-05-14 102 views
-1

我想知道使用哪種HTTP方法來開發登錄API,GET或POST? 我使用post方法在PHP中開發了我的登錄API,但我的BOSS說,爲什麼使用POST方法而不是GET方法。用於登錄GET或POST?

回答

1

使用POST。使用GET參數在URL中,這是非常不安全的。雖然https(你正在使用https,對嗎?)應該加密所有端到端,使用GET參數將以純文本格式存儲在日誌文件和用戶瀏覽器中(直到下一頁被加載或重定向)。

-1

有適當調諧服務器POST從安全的角度來看GET,更重要的使用HTTPS之間和真差別不大,並且

+1

否。GET參數通過URL傳遞並且可見。 – Harikrishnan

+0

如果請求ajaxed,Nothig是可見的,並且此API可能不適用於瀏覽器,那麼GET優先於它,因爲它很簡單 – acr

+0

我看不出爲什麼這個答案是downvoted。如果任何事情得不到支持,將會是一個低質量的問題。除此之外,誰做了downvote它,應該閱讀[要麼是GET或POST比另一個更安全?](http://stackoverflow.com/questions/198462/is-either-get-or-post-more-secure -than-the-other) –

2

始終POST,和優選與SSL(如:https://...)。由於緩存原因,將GET中的參數存儲到整個地方。

所以,如果你的老闆需要一個理由:安全


有一個REST相關的理由:GET查詢首先是預計將積極緩存,因爲他們不改變數據的服務器狀態。因爲改變了服務器的狀態並且(與PUT請求不同),所以不希望調用多個POST請求來返回相同的響應並使服務器保持相同的狀態,而是預期永遠不會緩存POST請求。

例如:如果您發送5次登錄請求,則失敗,第6次可以返回「您的IP已被封鎖30分鐘」作爲回覆。