Сохранение по электронной почте и обработана по электронной почте через MailGun в мое приложение
-
10-12-2019 - |
Вопрос
Я настроил Heroku & Railgun, чтобы иметь возможность взять контент от электронной почты и хранить его.
У меня есть до такой степени, что, когда электронные письма отправляются в MailGun, они пересылаются в мое приложение и пустые интерфейсы моих сообщений создаются автоматически, однако, не хранятся ни один из полей из электронного письма (несмотря на имея соответствующую схему (например, от: строку субъекта: строка и т. Д.)).
Моя проблема состоит в том, что я не могу выяснить, как взять содержимое запроса HTTP Post и обработать его, чтобы каждое сообщение сохраняется с соответствующей информацией. Я вижу, что он приходит в 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
Любые предложения?
Я уверен, что это базовое понимание проблемы со своей стороны, но я не могу найти ничего, что действительно объясняет, что я пытаюсь сделать здесь.
Решение
MailGunner здесь:
Мы не публикуем объекты Rails, мы публикуем простые http-параметры, как объяснено в этой таблице: http://documentation.mailgun.net/user_manual.html#parsed-messages-parameters
Нет параметра «сообщения», который вы пытаетесь схватить с параматами [: сообщение], вы должны собрать ваше сообщение с отдельными компонентами, такими как Parmas [: тема], параметры [: корпус] и т. Д./ P >.
Также, поскольку пост исходит из другого домена, вам нужно отключить рельсы запросить подделку защиты этого контроллера: http://api.rubyonrails.org/Classes/actionController/RequestformageProtection/Classmethods.html