Why does Rails want to return "head :no_content" for JSON PUT requests? -
Why does Rails want to return "head :no_content" for JSON PUT requests? -
after run rails generate scaffold user generated controller function in rails 3.2.11 updating user looks this:
def update @user = user.find(params[:id]) respond_to |format| if @user.update_attributes(params[:user]) format.html { redirect_to @user, notice: 'user updated.' } format.json { head :no_content } else format.html { render action: "edit" } format.json { render json: @user.errors, status: :unprocessable_entity } end end end the line i'm curious returning head :no_content successful json update request. i've done googling, guessing sort of restful property, not homecoming updated object, couldn't find claimed case.
why default, versus returning json representation of user object post-update?
good question, apparently purpose homecoming http status code 200 empty body, see this discussion. maybe brevity or security purposes. head :no_content seems create http response 200 (success) empty body, returning response header:
status code:200 ok see this related question.
ruby-on-rails
Comments
Post a Comment