Я использую grape-api, и у меня возникла проблема с выполнением запроса GET от моей внешней службы с закодированными параметрами запроса. Вот как моя конечная точка настроена на получение параметров:
params do
requires :event_id, type: String, desc: 'Event id'
requires :tickets, type: Array, desc: 'Array of each ticket data ex: [ {id: "", count: 1 , coupon_code: ""} ]', allow_blank: false do
requires :id, type: String, desc: 'Ticket id'
requires :count, type: Integer, desc: 'Number of tickets to get'
optional :coupon_code, type: String, desc: 'Promocode to apply if any'
end
end
Как видите, я ожидаю параметр event_id и другой массив объектов с параметром tickets, и вот как выглядит URL-адрес запроса:
однако виноград, похоже, не понимает эти закодированные параметры запроса, и я получаю это исключение:
[Exception: event_id is missing, tickets[0][id] is missing, tickets[0][id] is invalid, tickets[0][count] is missing, tickets[0][count] is invalid]
мой вопрос таков: есть ли способ, которым я могу заставить виноград правильно декодировать и анализировать параметры запроса? я что-то пропустил здесь?
event_id
в отображаемом вами URL-адресе. ЭтоeventId
. - person Jagdeep Singh   schedule 08.08.2018