Я хочу зробити POST requestдля свого місцевого розробника, ось так:
HTTParty.post('http://localhost:3000/fetch_heroku',
:body => {:type => 'product'},)
Однак із консолі сервера він повідомляє
Started POST "/fetch_heroku" for 127.0.0.1 at 2016-02-03 23:33:39 +0800
ActiveRecord::SchemaMigration Load (0.0ms) SELECT "schema_migrations".* FROM "schema_migrations"
Processing by AdminController#fetch_heroku as */*
Parameters: {"type"=>"product"}
Can't verify CSRF token authenticity
Completed 422 Unprocessable Entity in 1ms
Ось мій контролер і налаштування маршрутів, це досить просто.
def fetch_heroku
if params[:type] == 'product'
flash[:alert] = 'Fetch Product From Heroku'
Heroku.get_product
end
end
post 'fetch_heroku' => 'admin#fetch_heroku'
Я не впевнений, що мені потрібно робити? Вимкнути CSRF, безумовно, спрацювало б, але я вважаю, що це повинна бути моєю помилкою при створенні такого API.
Чи потрібно інше налаштування робити?
protect_from_forgery with: :null_session.