Как получить ВСЕ параметры URL в приложении Sinatra

Используя следующее приложение Sinatra

get '/app' do
  content_type :json
  {"params" => params}.to_json
end

Вызов:

/app?param1=one&param2=two&param2=alt

Дает следующий результат:

{"params":{"param1":"one","param2":"alt"}}

Params имеет только два ключа, param1 и param2.

Я понимаю, что Sinatra устанавливает параметрические усилители как хеш, но он не представляет весь URL-запрос.

Существует ли способ в Sinatra получить список всех параметров URL, отправленных в запросе?

21
задан necrobious 16 February 2010 в 23:29
поделиться

1 ответ

Я полагаю, что по умолчанию параметры с тем же именем будут перезаписаны параметром, который был обработан последним.

Вы можете настроить params2 как массив

...&param2[]=two&param2[]=alt

или проанализировать строку запроса по сравнению с хешем params, предоставленным Sinatra.

18
ответ дан 29 November 2019 в 06:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: