Невозможно получить доступ к ActionController :: Parameters, независимо от того, что я пытаюсь - PullRequest
0 голосов
/ 13 июня 2018

Не знаю, почему я не могу получить доступ к этим параметрам, которые относятся к классу ActionController :: Parameters.Вот параметры:

{"{\"base_options\":{\"origin\":{\"name\":\"\",\"phone\":\"\",\"street_1\":\"\",\
"street_2\":\"\",\"zip\":\"\",\"city\":\"\",\"state_iso2\":\"\",\"country_iso2\":\
"US\",\"address_type\":\"commercial\"},\"destination\":{\"name\":\"\",\"phone\":\"\",
\"street_1\":\"932 MyStreet Dr\",\"street_2\":\"\",\"zip\":\"12345\",\"city\":\"Mecio\",
\"state_iso2\":\"NX\",\"country_iso2\":\"US\",\"address_type\":\"residential\"},
\"items\":"=><ActionController::Parameters {"{\"sku\":\"\",\"name\":\"\",
\"length\":{\"units\":\"in\",\"value\":0},\"width\":{\"units\":\"in\",\"value\":0},
\"height\":{\"units\":\"in\",\"value\":0},\"weight\":{\"units\":\"oz\",\"value\":10},
\"discounted_price\":{\"currency\":\"USD\",\"amount\":\"0\"},
\"declared_value\":{\"currency\":\"USD\",\"amount\":\"17.5\"},\"quantity\":1,
\"attributes\":"=>[{"}"=>{",\"customer\":{\"customer_groups\":"=>{"\"\""=>{"},\"cart_id\":\"05\"},
\"connection_options\":{\"auth_token\":\"adfasdf\",\"seller_id\":\"asdf\",\"marketplace\":\"5\"}
,\"zone_options\":"=>[{",\"rate_options\":"=>[{"}"=>nil}]}]}}}}]} permitted: false>, 
"controller"=>"welcome", "action"=>"amazon_creds"}

Я пытаюсь получить пометку, но все, что я когда-либо получаю, это nil с чем угодно.Я пробовал следующее:

params[:sku]
params["sku"]
params[:base_options][:sku]
params.as_json[:base_options]
params.as_json[:sku]
params.to_h[:sku]
params.to_unsafe_h.slice(:base_options)
params.to_unsafe_h[:sku]
params[0]

И да, я прочитал это ActionContoller :: Параметры

Да, я в растерянности, понятия не имеюкак получить доступ к этим params.Кто-нибудь избавил меня от страданий?

1 Ответ

0 голосов
/ 13 июня 2018

Rails автоматически заполнит хэш params десериализованным телом запроса, если заголовок запроса Content-Type установлен на application/json.Похоже, что заголовок отсутствует для этого запроса.Мы добавляем соответствующий заголовок сейчас.

...