【发布时间】:2016-02-22 07:20:51
【问题描述】:
我有兴趣将 API 添加到现有的 Rails 应用程序。我希望应用程序控制器继承自 ActionController::Base 和 Api 控制器继承自 ActionController::API 以便 API 端点上不存在不需要的中间件
我可以添加 rails-api gem(我被锁定在 rails 4.2),并根据需要调整包装参数初始化程序,但是当这种情况发生时,我的 rails 应用程序中的会话 ID 记录会中断。
同时使用 rails 和 rails-api 有问题吗? 和 rails 应用程序可以有两个不同的基础吗?
为了便于讨论,假设我不能只制作一个单独的 rails-api 应用程序并将业务逻辑提取到 gems 中。
编辑:
我们有什么:
ActionController::Base
\ ApplicationController
\ RailsControllers
\ ApiController
\ RailsAPIControllers
我们想要什么:
ActionController::Base
\ ApplicationController
\ RailsControllers
ActionController::API
\ ApiController
\ RailsAPIControllers
我不确定是否必须在某些时候加载 Base ActionController 是否有任何实际差异。这个想法是,如果 RailAPIControllers 继承自 API ActionController,它们会更轻,但这样做会导致问题。
【问题讨论】:
标签: ruby-on-rails ruby api