Я ищу хэш-эквивалент этого вопроса: How to pass array query params to AWS API Gateway?Как передать параметры запроса hash в AWS API Gateway?
В принципе, я хочу, чтобы настроить параметры запроса, которые выглядят следующим образом: example.com?color[background]=yellow&color[foreground]=black
Когда я пытаюсь создать параметр запроса с именем color[background]
в API-интерфейс шлюз консоль, я получаю следующее сообщение об ошибке: Invalid mapping expression specified: Validation Result: warnings : [], errors : [Parameter name should be a non-empty alphanumeric string]
Я также попытался настройка параметров color
запроса и затем передавая различные «хэш» к нему. Вот что я пытался переходящие в этот параметр:
{"background" => 123, "foreground" => "abc"}
и удаление пространства{"background" : 123, "foreground" : "abc"}
и удаление пространства{background:123,foreground:abc}
Все они происходят в запросе, что некоторая форма example.com?color=%7Bbackground:123,foreground:abc%7D
с хешем, который я прохожу после =
.
Любые идеи? Является ли эта плохая практика для параметров строки запроса так или иначе, и я должен придерживаться простых параметров?
Вы можете передать хэш, но вы не можете ожидать, что API Gateway понимает, что вы намерены это понимать ... это просто строковое значение в этой точке ... но ... поддерживает ли оно точки в ключе имена? Я бы склонен использовать '? Color.background = yellow & color.background = black' для удобочитаемости, если бы я просто проектировал API без какой-либо конкретной платформы, но это может быть не буквенно-цифровое значение в зависимости от того, насколько они свободно используют термин , –
@ Michael-sqlbot - Спасибо! Я собираюсь пойти с чем-то вроде этого. – readyornot