0

このコードを試してみると、ステータスコード 201 の場合に機能しています.....

resource_m = RestClient::Resource.new Rails.application.config.sta+"/mov"
resource_m = resource_m.post  @hash.to_json,  :content_type => :json, :accept =>:json
puts "code...#{resource_m.code}"

case resource_m.code
when 201
  respond_to do |format|
    @noticec =  {:name =>"Successfully",:code => "201"}
    format.json  { render :json => @noticec }
  end
when 409
  respond_to do |format|
    @noticec =  {:name =>"already exists",:code => "409" }
    format.json  { render :json => @noticec }
  end   

when 401
  respond_to do |format|
      @noticec =  {:name =>"Error",:code => "401" }
      format.json  { render :json => @noticec }
   end
else
  respond_to do |format|
      @noticec =  {:name =>"Something went wrong" }
      format.json  { render :json => @noticec }
   end

end

しかし、サーバーからの応答コードが 409 の場合、1370ms でエラー Completed 500 Internal Server Error が発生します ActionView::MissingTemplate (Missing template)。 しかし、REST-CLIENT でこれを試すと、ステータス コードが 409 の競合であることがわかりました。. コントローラーでその応答コードを取得できません。

4

1 に答える 1