我有一個iOS移動客戶端的Rails應用程序。如何使用Authlogic實現Rails應用程序的API認證
到目前爲止,我已經有iPhone客戶端發送HTTP請求到正常的URL。我想用適當的API替換它。我使用Rails 3,並使用Authlogic進行身份驗證。
我已經觀看了版本化apis上的railscasts和securing APIs。但由於我已經使用authlogic進行身份驗證,我認爲重新實現令牌創建將是不必要的?
我創建了API,就像Ryan Bates在this episode中建議的那樣,在app/controllers/api/v1 /下有一個控制器。我在views/api/v1中有與RABL相對應的視圖。
我控制器
module Api
module V1
class RecordsController < ApplicationController
respond_to :json
def index
status = RecordStatus.where("name = ?", "processed").first
@records = current_user.records.where("record_status_id = ?", status.id)
end
def show
@record = Record.find(params[:id])
end
end
end
end
基本上,我讀了很多不同的選項來實現(包括一堆關於SO答案),我真的很爲難,什麼是最好的方式對我來說安全地實現身份驗證。我應該去oauth嗎?我可以用authlogic來做到嗎?哪一個選項可以讓你從iOS端輕鬆使用?哪個選項最容易實現?
任何指導將有所幫助。
但我確實需要持久性。一旦用戶登錄到iPhone應用程序一次,他們需要保持登錄狀態。另外,將該令牌放在開放位置並不安全嗎?這是railscasts中的解決方案之一。我不確定使用它。 – Shinigami
我的閱讀是持久的,你只需要每次都通過它。如何確保您的應用程序具有該功能......這取決於您。讓他們登錄,然後設置一個新的令牌,將其用於會話,然後忘記它...我不知道... –