首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ActionController的区别是::API和ApplicationController

ActionController的区别是::API和ApplicationController
EN

Stack Overflow用户
提问于 2018-01-20 15:40:50
回答 1查看 5.4K关注 0票数 2

我有一些控制器用于API响应,但应用程序的其余部分是一个常规的Rails 5应用程序。

如果我将基类更改为

代码语言:javascript
复制
ApplicationController::API

对比

代码语言:javascript
复制
ApplicationController

我注意到如果我做了::API,那么我需要在呈现时添加json:,然后才能呈现msg

在幕后,请求/响应在从API继承时会更精简吗?

代码语言:javascript
复制
class Api::V1::TestController < ????
  def index
    msg = {status: "ok", message: "hello world"}
    render json: msg
  end
end
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-20 16:16:30

来自文档 (这是谷歌的第一次攻击).

API Controller是ActionController::Base的轻量级版本,用于不需要完整Rails控制器提供的所有功能的应用程序,允许您创建仅用于API应用程序所需功能的控制器。 API Controller不同于普通控制器,因为默认情况下它不包括浏览器访问通常需要的许多特性:布局和模板呈现、cookie、会话、闪存、资产等等。这使得整个控制器堆栈更薄,适合于API应用程序。这并不意味着如果您需要这些特性,就不会有这些特性:它们都可供您在应用程序中包含,只是它们不是默认API控制器堆栈的一部分。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48357943

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档