2012-02-19 37 views
6

我在一個Rails應用中使用Devise,並希望通過API公開一些模型數據,但是應該像應用一樣限制對API的訪問。API訪問與設計認證 - 最佳實踐?

$ curl http://myapp.com/api/v1/sales/7.json 
{"error":"You need to sign in or sign up before continuing."} 

顯然。

在這種情況下訪問API是否有最佳做法?我想寧願來驗證+搶一步數據,但這只是爲了讓客戶的工作更輕鬆。他們將使用JQuery在數據客戶端提取數據。

感謝您的任何信息!

  • 凡妮莎

回答

0

我的建議會生成API「鍵」(哈希值),並具有與JSON請求通過。這樣你可以驗證和跟蹤API的使用。很多API使用「密鑰」來跟蹤和驗證使用情況。例如Google地圖,他們只使用一個API密鑰。 PayPal使用用戶名,密碼和密鑰。有很多方法可以做到這一點。

我會嘗試創建屬於用戶的一對多表,只是爲了鍵。這樣用戶可以爲不同的目的生成多個散列鍵。 (一個用於報告,一個用於備份,一個用於從Powerpoint自動提取的花式餅圖)。