2012-09-06 28 views
0

我的客戶端Web應用程序的後端是JSON Api。我希望保持後端通用,以便諸如移動設備等其他設備可以重用相同的服務。API環境中令牌的客戶端Cookie

假設每個用戶帳戶在他們的個人資料中都有一個令牌,當他們用他們的用戶名/密碼登錄時,我會將令牌發送回去。在每個後續的請求中,我發回令牌,在數據庫中查找以查明用戶是誰。

隨着用戶在整個應用中移動,我如何/在哪裏存儲此令牌。我是否將它存儲在cookie中?爲了保持某種會話狀態,我會放棄額外的cookie嗎?

+1

沒有任何其他措施,您絕對不應該使用cookie來允許訪問您的API。如果你這樣做,那麼[我可以從我的網站查詢你的API](http://en.wikipedia.org/wiki/Cross-site_request_forgery),如果我可以讓一個經過驗證的用戶訪問我的網站。 – Arjan

回答

0

首先,這不是100%RestFul.I都面臨類似的情況。博客它here

解決方案是,我創建了一個單一對象來存儲用戶身份驗證令牌在應用程序容器中。然後篩選器配置爲查詢請求並獲取客戶端發送的身份驗證令牌。然後,此令牌與存儲在Singleton會話對象中的令牌相匹配。