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

StackOverflow https://stackoverflow.com//questions/9644546

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

我已经达到了它的指出,当电子邮件被发送到mailgun时,它们被转发到我的应用程序,而且自动创建了我的消息模型的空的情况,但是,虽然没有电子邮件中的任何字段都没有存储(尽管如此具有匹配的架构(例如,来自:String主题:字符串等))。

我的问题是我无法弄清楚如何拍摄HTTP发布请求的内容并处理它,以便将每个消息存储在其对应的信息中。我可以看到它进入heroku(通过Heroku日志),但无法存储它。我在第一次上看了以下字段:

  • 主题
  • 附件

    目前我的消息_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
    
    .

    任何建议?

    我相信我的基本理解问题,但我似乎无法找到任何真正解释我想在这里做的事情的事情。

有帮助吗?

解决方案

此处的邮件箱:

我们没有发布rails对象,我们发布了简单的HTTP参数,如本表中所述: http://documentation.mailgun.net/user_manual.html#parsed-messages-parameters

没有“消息”参数,您正在尝试使用Params获取参数[:Message],您应该将您的消息与Parmas [:主题],Params [:Body-Plain]等的单个组件组装。

此外,由于POST来自不同的域,因此需要禁用Rails请求此控制器操作的伪造保护: http://api.rubyonrails.org/classes/actioncontroller/requestforgeryprotection/classmethods.html

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top