Я пытаюсь отправить запрос POST из внешнего сценария Ruby в приложение Rails через HTTP#post_form
.Запрос сделан к действию create
(т. Е. URI http://server/controller
).
Если я закодирую один параметр в запросе, все в порядке:
HTTP::post_form(uri, { :my_param => "value" })
Хотя я должен явно вытянуть my_param
из params
вручную, в контроллере.Это кажется неэффективным и нарушает создание новой записи из самого приложения (поскольку этот параметр отсутствует).Следовательно, я пытаюсь заставить мой сценарий представлять себя как Rails, передавая соответствующие данные так, как этого ожидал бы контроллер, например,
HTTP::post_form(uri, { :object => { :my_param => "value" } })
Однако это не работает.post_form
, кажется, ускользает от моего хэша во что-то другое, то есть
{ "object" => [\"my_param\", \"value\"] }
Что, очевидно, не делает то же самое.Я пропускаю что-то очевидное в том, как я передаю данные?Или я не могу достичь того, что мне нужно (создать новую запись вне приложения)?