1

我有一个带有 iOS 移动客户端的 Rails 应用程序。

到目前为止,我已经让 iPhone 客户端向普通 URL 发送 HTTP 请求。我想用适当的 API 替换它。我在 Rails 3 上,并且正在使用 Authlogic 进行身份验证。

我已经观看了有关版本化 API 和保护 API的 railscasts 。但是由于我已经在使用 authlogic 进行身份验证,我认为重新实现令牌创建是不必要的吗?

正如 Ryan Bates 在本集中建议的那样,我使用 app/controllers/api/v1/ 下的控制器创建了 API。我在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 端易于使用?哪个选项最容易实施?

任何指导都会有所帮助。

4

1 回答 1

0

也许您可以使用已经在 authlogic 中的单一访问令牌?

http://rubydoc.info/gems/authlogic/Authlogic/Session/Params

于 2013-01-09T00:18:30.540 回答