2013-02-10 146 views
1

我期待設置一個rails-api應用程序,並希望能夠在整個請求中訪問用戶。Rails-api HTTP令牌認證

我讀過HTTP標記身份驗證幾乎是要走到這裏的方式,將標記傳遞給每個請求的標頭。

有什麼讓我有點難住的是我如何獲取用戶的每一個請求。我應該編寫中間件來設置它,還是有一個已經做了這種生命週期的gem?

回答

1

您可以將一列添加到用戶表並將此列用作標記。然後在你的控制器,你可以添加以下代碼,以獲取用戶(假設你使用http_token作爲列名)

authenticate_or_request_with_http_token do |token, options| 
    @current_user = User.find_by_http_token(token) 
end 
+0

有什麼原因,我可能想在一個較低的水平(架)做這做嘗試讓用戶通過助手設置? – 2013-02-10 05:36:34

+1

對不起,我不確定你在中間件中做了什麼優點。你應該在你的應用程序控制器中進行設置。 – jvnill 2013-02-10 12:59:22