【问题标题】:Why is Rails treating request as JSON?为什么 Rails 将请求视为 JSON?
【发布时间】:2014-11-18 06:04:37
【问题描述】:

为什么 Rails 4.2.0.beta2 将此请求视为 JSON?

请求:

curl http://localhost:3000/messages/eb89135

日志:

Processing by MessagesController#show as JSON 

回复:

{"message":{...}}

以下是我的应用程序的相关部分:

# messages#show

  def show

    @message = Message.find_by_shortlink(params[:shortlink])

    @message

  end

# Gemfile
  source 'https://rubygems.org'

  ruby '2.1.2'

  gem 'rails', github: 'rails/rails', branch: 'v4.2.0.beta2'
  gem 'jbuilder', '~> 2.0'
  gem 'haml'

来自网络浏览器的 GET 请求也被视为 JSON。

使用 [URL].html 可以在浏览器和 CURL 中按预期工作,但我想避免必须使用扩展程序并让 Rails 根据提供的标头对内容类型进行分类。

我刚刚启动了一个新的 Rails 4.2.0 应用程序作为健全性检查,请求/响应按预期运行。

我是否遗漏了一些明显的东西?

【问题讨论】:

  • 您是否在路由文件中设置默认响应?
  • 是的——就是这样!请提交作为答案,我很乐意接受。

标签: ruby-on-rails ruby json rest http


【解决方案1】:

确保您没有在路由文件中设置默认响应格式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-28
    • 2013-01-17
    • 2023-04-07
    • 2020-01-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多