我有一个Rails应用程序,它会将一些数据发布到另一个Rails应用程序。出于某些原因,我不想使用ActiveResource,所以我使用了类似的东西:
res = Net::HTTP.post_form(URI.parse('http://localhost:3030/support_requests/new'),
{'from'=>'somebody', 'due'=>'2009-03-31'})
其他应用程序会抛出 InvalidAuthenticityToken ,这是有道理的,因为我没有发送任何authenticity_token。
我的问题是,我如何制作一个应用程序将正确的身份验证令牌发送给另一个?
答案 0 :(得分:2)
您不必使用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
应该非常简单。