Как бороться с protect_from_forgery, чтобы приложения Rails общались? - PullRequest
3 голосов
/ 06 ноября 2008

У меня есть приложение Rails, которое будет публиковать некоторые данные в другое приложение Rails. По некоторым причинам я не хочу использовать ActiveResource, поэтому я использовал что-то вроде:

  res = Net::HTTP.post_form(URI.parse('http://localhost:3030/support_requests/new'),
                                    {'from'=>'somebody', 'due'=>'2009-03-31'})

Бывает, что другое приложение выдает InvalidAuthenticityToken , это имеет смысл, так как я не отправлял аутентификационный_токен.

У меня вопрос, как я могу сделать одно приложение для отправки правильного токена авторизации другому?

1 Ответ

2 голосов
/ 06 ноября 2008

Вам не нужно использовать ActiveResources. Если вы отправите запрос в формате xml, он обойдет protect_from_forgery.

curl -H "Content-Type: text/xml" -d "<support-request><from>...</from></support-request>" -X POST http://localhost:3000/support_requests.xml -i

Это должно быть довольно просто.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...