我正在尝试拆分我当前的 Ruby on Rails 3 Web 应用程序和它的 Web 服务 (API)。我的 web 应用程序在 Heroku 上运行,并将 API 实现为我的应用程序中的命名空间路由。例如/events
返回一个 HTML 页面并/api/v1/events
返回一个 JSON 数据。
根据一些最佳实践,我想将它们分成两个不同的应用程序。我选择了 Sinatra 来实现 API 应用程序。它现在适用于不需要身份验证的简单请求。
我的 Ruby on Rails 3 应用程序正在使用 Devise 对用户进行身份验证。还可以使用 Facebook 帐户登录。现在我想要实现的是通过我的基于 Sinatra 的 API 使用 Warden 对用户进行 HTTP 基本身份验证(包括注册)。
最好的方法是什么?或者也许我可以使用与 Warden 不同的东西?
请记住,我对 Rack 不是很熟悉 :)