gpt4 book ai didi

ruby-on-rails - 文本字段 : ERROR invalid body size 上的 Heroku Rails 日志错误消息

转载 作者:行者123 更新时间:2023-11-29 13:02:55 26 4
gpt4 key购买 nike

我正在使用 Heroku Postgres::Onyx 的爱好层运行托管在 Heroku 上的 Rails 4.0.2 应用程序。我的日志文件中出现一个奇怪的错误,一条记录无法保存。我无法重现错误。

2014-05-23T05:28:33.443728+00:00 app[web.1]: [2014-05-23 05:28:33] ERROR invalid body size.

这个错误很奇怪的原因是我的应用程序中唯一的正文字段是文本字段。

这是相关的架构:

create_table "invitation_templates", force: true do |t|

t.integer "business_id"
t.string "subject"
t.text "body"
t.datetime "created_at"
t.datetime "updated_at"
end

这是我的模型(顺便说一句,它不包含任何验证):

class InvitationTemplate < ActiveRecord::Base

belongs_to :business

end

这是完整的 Controller :

定义创建

# @user set by correct_user

# @business set by correct_user

@invite = Invite.new(invite_params)

if @invite.valid?
invtemp = InvitationTemplate.find_or_create_by(business_id: @business.id)
invtemp.subject = @invite.subject
invtemp.body = @invite.message
invtemp.save # <--- This is the only line that I can think of as having thrown the error

if invite_params[:image_file].present?
uploaded_io = invite_params[:image_file]
@invite.image_id = Image.add_or_update( @invite.image_id, uploaded_io, "invites" )
end # if params[:image_file].present?

inviter = ManInvite.new
res = inviter.sendInvitation(@invite, @business)

if res
flash[:notice] = "We sent your message(s). You will recieve an email when a new testimonial has been submitted."
else
flash[:error] = "We saved your message(s). But had a problem sending. Please contact support with this information: #{@invite.status} #{@invite.audit_id}"
end

if params[:send_another]
redirect_to( new_business_invite_path(@business) )
else
redirect_to( business_dashboard_index_path(current_user.businesses.first()) )
end

else
render 'new'
end

结束

我不认为文本字段会引发大小错误。任何关于此错误的原因/来源的想法都将不胜感激。

最佳答案

我在尝试执行简单的获取时遇到了同样的错误。您看到的错误消息与您拥有名为 body 的属性这一事实无关(至少基于我的情况)。我的问题与错误的 http get 请求有关。我正在使用 Alamofire(iOS 库)发出 GET 请求并将编码设置为 JSON。这是一个被 rails 拒绝的无效请求。

如果你查看你的日志,你可能不会看到像这样的日志行Started POST "/invitations ... 这意味着请求甚至没有被 Rails 解析。

检查您是如何提出请求的,并确保那里没有错误。

编辑:

我会更直接:问题与您发出请求的方式有关,而不是与您具有 body 属性这一事实有关。

  1. 如果您是通过浏览器发出请求,请通过点击 URL 检查它是否与之前评论中报告的错误无关。
  2. 如果您使用第三方库自行构建请求,请检查请求是否正确构建。

我建议你尝试使用 Postman(chrome 扩展)来快速测试你的通话。我起草了一份 quick rails app尝试你的场景。在下图中检查如何使用 postman 向您的服务器发出请求:postman post request .

另外,我已经在 heroku 中部署了这个草稿应用程序(floating-sands-5859 是应用程序的名称)

关于ruby-on-rails - 文本字段 : ERROR invalid body size 上的 Heroku Rails 日志错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23834179/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com