Rails - Как разрешить сторонний сервис POST для моего приложения rails? - PullRequest
1 голос
/ 03 февраля 2011

Я новичок в рельсах, так что это может показаться глупым вопросом. Я хочу разрешить стороннему сайту публиковать данные по определенному URL на моем сайте. Я хочу взять данные, отформатировать их и добавить запись в свою базу данных.

Я делал это на других языках, но понятия не имею, как это сделать на рельсах или даже с чего начать. Но я сделаю все возможное, и надеюсь, что кто-нибудь направит меня в правильном направлении.

Добавьте это к моим маршрутам:

match 'third_party_post_here', :to => 'contents#get_some'

Добавить функцию в мой contents_controller.rb

  def get_some

    content = Content.new

     # these are the fields that will be posted
        #   method
        #   title
        #   message
        #   location
        #   media
        #   raw_message
        #   trigger

  end

Вы можете видеть, что есть определенные поля, которые я ожидал. Так я бы сделал что-то подобное ?:

content = Content.new
content.name = Content.find(params[:title])

А потом, после того как я собрал все нужные мне данные, выполните content.save. Я не уверен, пойду ли я по правильному пути или нет? Действительно стараюсь сделать это самым «рельсовым путем» из возможных. Заранее благодарим за любые советы или советы по передовому опыту!

1 Ответ

3 голосов
/ 03 февраля 2011

В вашем ContentsController добавьте эту строку вверху:

protect_from_forgery, :except => [:get_some]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...