首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用带有有限中间件的Rails API应用程序的脚本进行响应(config.api_only = true)?

使用带有有限中间件的Rails API应用程序的脚本进行响应(config.api_only = true)?
EN

Stack Overflow用户
提问于 2018-06-27 18:51:44
回答 1查看 83关注 0票数 0

我有一个Rails 5应用程序构建作为一个api应用程序。因此,默认情况下,它只使用json进行响应。

但是对于一个特定的请求,我需要应用程序来响应一个脚本。

在常规的Rails应用程序中,我只需将脚本放在js.erb文件中即可。这在这里行不通。

如果我的控制器操作如下所示:

代码语言:javascript
运行
复制
def respond_with_js
end

我请求这样的应用程序:

代码语言:javascript
运行
复制
$.getScript("https://myapp.example.com/respond_with_js");

它用204 No Content响应

代码语言:javascript
运行
复制
Started GET "/respond_with_js" for 127.0.0.1 at 2018-06-27 20:28:44 +0200
Processing by ApplicationController#respond_with_js as */*
Completed 204 No Content in 0ms

我怎么处理这件事?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-27 19:12:44

如果rails服务器仅为api版本,则不能以脚本形式请求。

默认情况下,Rails响应json。

代码语言:javascript
运行
复制
def respond_with_json
   render json: {message: "works"}, status: :ok
end

要请求它,您需要以json dataType的形式请求:

代码语言:javascript
运行
复制
$.ajax({
    url: "https://myapp.example.com/respond_with_json",
    method: "GET",
    dataType: "json",
    success: function(res){
       console.log(res.message)
    }
})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51069630

复制
相关文章

相似问题

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