从多部分请求渲染json?

时间:2015-05-18 22:25:55

标签: ruby-on-rails json multipartform-data multipart

我想在多部分请求后从我的API返回一个json响应。

请求成功并按照我的预期保存所有内容,但之后我似乎无法呈现json - 它只是呈现html。

这是我的代码:

 def create
    @article = Article.new(article_params)

    respond_to do |format|
      if @article.save
        format.multipart_form { render :show, status: :created, location: @article }
        format.html { redirect_to @article, notice: 'Article was successfully created.' }
        format.json { render :show, status: :created, location: @article }
      else
        format.multipart_form { render json: @article.errors, status: :unprocessable_entity }
        format.html { render :new }
        format.json { render json: @article.errors, status: :unprocessable_entity }
      end
    end
  end

我正在从iOS应用程序发送请求,这里是请求标题:

{
    "Content-Length" = 563285;
    "Content-Type" = "multipart/form-data; boundary=2EA4A96C-18A6-4E1E-9140-DAC63D1066E7";
}

我是否需要在我的请求中指定其他内容,或者在我的rails create方法中是否存在我做错的内容?

1 个答案:

答案 0 :(得分:1)

为什么要渲染:显示'成功保存?你想不想

这一行看起来不对:

format.multipart_form { render :show, status: :created, location: @article }

这会更合适吗?

format.multipart_form { render :json => @article, status: :created }