Ааа, я понял!
Так что, к сожалению, страница, на которой показаны пользовательские домены, находится не там, где вам нужно создавать маршруты.
Правильная процедура - создать API (или использовать существующий API и изменить ресурсы) и предоставить ему прокси-ресурс и простой метод GET, исходящий из корневого пути.
Сначала перейдите в консоль API GateWay и создайте новый API.
Затем, когда вы дадите ему имя и выберете тип (региональный или пограничный), появится страница ресурсов
Здесь вы будете делать 2 вещи: создать ресурс перехвата всех прокси, а также получить ресурс для корневого пути.
Шаг 1: Сделать перехват всех прокси-ресурсов:
Нажмите Действия и выберите Создать ресурс
В мастере нажмите «Настроить как прокси» и присвойте ему имя. Оставьте путь к ресурсу как есть. Затем нажмите создать ресурс. {Proxy +} - это нотация, которая сообщает AWS, что этот ресурс должен принимать любой путь, который имеет что-либо после /. Это означает, что / test будет работать так же, как и / test / 1/2/3 / etc. Однако только / один не будет работать!
Далее вы попадете на этот экран, где вы выбираете тип интеграции. Мы хотим лямбда, которая по умолчанию. Убедитесь, что вы выбрали правильный регион, для меня по умолчанию был правильный. Затем начните вводить имя лямбда-функции, и оно должно динамически отобразить список ваших лямбда-функций. выберите тот, который вы хотите для вашего приложения. Если это не сработает, вы можете скопировать и вставить лямбда-ARN из лямбда-функции. Нажмите Сохранить.
Шаг 2. Создание ресурса get для корневого пути
Нажмите на корневой слеш вверху, прямо там, где написано ресурсы. Затем нажмите «Действия» и выберите «Создать метод». Под корневой косой чертой появится небольшой элемент выбора, и там вы должны выбрать GET, а затем нажать маленькую галочку.
Здесь обязательно установите флажок Использовать лямбда-прокси-интеграцию, и тогда остальная часть этой формы должна быть такой же, как и предыдущая. Просто выберите свой регион, лямбда-функцию и нажмите Сохранить.
Шаг 3: развертывание
Как только это будет сделано, перейдите к действиям и выберите Deploy API, дайте ему имя для этапа и некоторое описание, а затем вы готовы присоединить этот API к вашему пользовательскому домену.
Шаг 4: Присоединить
На левой вкладке прокрутите вниз до места, где указано Пользовательские доменные имена, и создайте новое доменное имя (или присоедините его к существующему, если оно у вас есть)
Введите доменное имя и выберите регион или край. Затем выберите свой сертификат (есть много хороших руководств по созданию сертификата через AWS)
Как только вы нажмете «Сохранить», оно будет выглядеть примерно так:
Нажмите Показать сопоставления базовых путей, а затем Изменить.
В поле пути просто оставьте косую черту, в поле Назначение выберите из раскрывающегося списка только что развернутый API. А справа выберите этап, который вы сделали при развертывании API.
Наконец, он будет некоторое время инициализироваться, поэтому, пока вы ждете этого, запомните, что вам нужно сделать набор записей route53 для этого домена и сопоставить его с целевым URL-адресом облачного фронта, который нам дал API GateWay. Этот целевой URL выглядит следующим образом: www.u10dsa3s5iovdk.cloudfront.net. Скопируйте это и перейдите к Маршруту 53, Выберите размещенную зону для своего домена. Создайте набор записей и присвойте ему то же имя, что и у только что созданного домена, поэтому, если вы создали www.example.com, в поле имени на Route 53 вам нужно ввести www. или если вы сделали test.example.com, вам нужно ввести test. Затем выберите «Псевдоним»: «Да», а для «Псевдонима» вставьте URL-адрес облачного фронта из API GateWay.
Когда инициализируется пользовательское доменное имя, вы можете звонить на www.example.com, а также на www.example.com/anything/else/you/want/to/put/here
.
Надеюсь, это поможет любому, кто застрял так же долго, как и я. Пожалуйста, дайте мне знать, если я что-то пропустил, или что-то неточное.