【问题标题】:Forcing HTTP Response to return Status 200 in Rails在 Rails 中强制 HTTP 响应返回状态 200
【发布时间】:2013-02-11 05:19:49
【问题描述】:

除了我返回 500 的严重情况外,您如何强制您的请求返回状态 200?目前,我遇到的问题是我的客户端不断收到 411 的状态代码(未指定长度),这导致我的测试框架出现问题。

有没有办法在 Rails 控制器中手动指定返回状态?

编辑:更具体地说,我知道你可以使用

:状态

但是在使用时我应该把它放在哪里

format.json { 渲染 :json=>final_obj}

在 POST 之后返回 HTTP 响应?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3


    【解决方案1】:
    render status: 200, json: @controller.to_json
    

    【讨论】:

    • 我认为使用 :ok 而不是文字 200 更好。万一http发生变化,它变成了别的东西:)
    • @Purrell 使用变量而不是幻数只是一个好习惯。
    【解决方案2】:

    如果我正确理解您的问题,我想这应该回答您的问题。

    Ruby 1.9.3

    format.json { render json: final_obj, status: :ok }
    

    Ruby 1.8.7

    format.json { render :json => final_obj, :status => :ok }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-09
      • 2019-07-18
      • 1970-01-01
      相关资源
      最近更新 更多