gpt4 book ai didi

ruby-on-rails - 将通过 Mailgun 通过电子邮件发送和处理的信息保存到我的应用程序中

转载 作者:可可西里 更新时间:2023-11-01 16:28:56 26 4
gpt4 key购买 nike

我已经设置了 Heroku & Railgun 以便能够从电子邮件中获取内容并存储它。

我已经知道当电子邮件发送到 mailgun 时,它们被转发到我的应用程序并且我的消息模型的空实例被自动创建,但是,电子邮件中的任何字段都没有被存储(尽管具有匹配的模式(例如 from:string subject:string 等)。

我的问题是我无法弄清楚如何获取 HTTP POST 请求的内容并对其进行处理,以便将每条消息与其对应的信息一起存储。我可以看到它正在进入 heroku(通过 heroku 日志),但无法存储它。我希望首先存储以下字段:

  • 来自
  • 主题
  • 附件

目前我的 messages_controller.rb 看起来像这样

    def create
@message = Message.new(params[:message])

respond_to do |format|
if @message.save
format.html { redirect_to @message, notice: 'Message was successfully created.' }
format.json { render json: @message, status: :created, location: @message }
else
format.html { render action: "new" }
format.json { render json: @message.errors, status: :unprocessable_entity }
end
end
end

有什么建议吗?

我确信这对我来说是一个基本的理解问题,但我似乎找不到任何能真正解释我在这里尝试做的事情的东西。

最佳答案

这里是 postman :

我们不发布 Rails 对象,我们发布简单的 HTTP 参数,如下表所述: http://documentation.mailgun.net/user_manual.html#parsed-messages-parameters

没有你试图用 params[:message] 获取的“消息”参数,你应该用单独的组件组装你的消息,如 parmas[:Subject]、params[:body-plain] 等。

此外,由于 POST 来自不同的域,您需要为此 Controller 操作禁用 Rails 请求伪造保护: http://api.rubyonrails.org/classes/ActionController/RequestForgeryProtection/ClassMethods.html

关于ruby-on-rails - 将通过 Mailgun 通过电子邮件发送和处理的信息保存到我的应用程序中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9644546/

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