2015-09-16 111 views
0

我們需要在服務器端使用提供json的Rest-API設置應用程序服務器通信。令牌身份驗證Do's和Dont's

我們希望發送令牌給服務器來驗證應用程序。它需要使用HTTPS,以便連接被加密。 但是我們對如何去做並不清楚。幾個問題出現了:

我可以用GET請求發送令牌嗎?或者是僅通過HTTPS加密的令牌(如果我使用POST請求發送它)?

我在哪裏放置令牌?令牌只是我的json數組的另一個參數,我必須將它放入HTTP頭文件中嗎? (我聽說過這個,但是不知道該怎麼做?)

什麼時候使用POST,什麼時候使用GET請求? 我的假設是使用GET,如果我(作爲應用程序)想要一個對象列表或單個對象,並使用POST,如果我想給服務器一個對象,服務器需要保存。

回答

1

無論您使用哪種動詞,通常都會在請求的HTTP標頭中發送標記,通常爲Authorization

發送令牌作爲查詢參數是可能的,但通常會皺眉。 使用HTTPS時,包括查詢參數在內的完整請求被加密,但包含查詢參數的請求URL可能會記錄在Web服務器上,可能會泄露該令牌。

在良好的REST API中,您使用GET從服務器和POST檢索資源以創建新資源或更改服務器上資源的狀態。請參閱this article