2014-02-05 36 views
-1

我爲我的Web應用程序創建了一個API,並且我有一些關於如何傳遞API密鑰和密碼等數據而不被第三方攔截的問題。現在他們正在使用GET方法傳遞,但就我的理解而言,GET方法不是很安全。 POST會成爲傳遞數據的更好方式,還是有另一種方法可以使用?POST值有多安全?

+0

[我應該什麼時候使用GET或POST方法?他們之間有什麼區別?](http://stackoverflow.com/questions/504947/when-should-i-use-get-or-post-method-whats-the-difference-between-them) – Numbers

回答

2

POST與GET一樣不安全。如果通過不安全的渠道發送,兩者都可能被嗅探。因此,真正重要的是您要通過HTTPS發送加密的數據。

0

GET和POST並沒有太大關係來保護你的應用程序,如果攻擊者有權訪問流,他可以看到變量。

您應該通過HTTPS發送數據,HTTPS以兩種方式加密數據(如果正確實施)意味着只有客戶端和服務器才能看到正在傳輸的數據。

-1
POST is more secure than GET for a couple of reasons 
1.Parameters are not saved in browser history 
2 Can not be bookmarked. 
3.The browser usually alerts the user that data will need to be re-submitted. 
4.multipart/form-data or application/x-www-form-urlencoded Use multipart encoding for binary data. 
5.Can send parameters, including uploading files, to the server 
**6.More difficult to hack** 
7.No restrictions. Binary data is also allowed. 
8.POST method variables are not displayed in the URL. 
9.Not cached 
10.8 Mb max size for the POST method 

所以郵政值是安全的

2

真的是沒有太大的區別,二者都在清晰發送。 W3Schools提供了關於每種方法的思想使用的很好的解釋。您可以在鏈接中看到POST請求並未真正隱藏:雖然這些變量在URL中不可見,但它們仍然是HTTP消息的一部分。 但是,在我鏈接的比較表中,GET被列爲比POST更安全。這可能是微不足道的,但建議不要通過GET發送密碼等內容,因爲即使在瀏覽器歷史記錄或Web服務器日誌中,它們也會顯示爲清晰。

總而言之,根據鏈接提供的建議使用POST和GET。然而,爲了安全通信,依賴於加密,例如通過使用TLS。