У меня есть лямбда-функция, которая доступна через шлюз API. Я могу обработать все запросы POST и GET, отправленные в конечную точку API (https://XXXXXXX.execute-api.us-east-1.amazonaws.com/default/myapi
) внутри моей лямбды, но мне нужно использовать некоторые сегменты в конце моего URL, когда я использую запросы PUT.
Мой код Python для вызова API находится здесь, и он работает правильно:
import requests
import json
url = 'https://XXXXXXX.execute-api.us-east-1.amazonaws.com/default/myapi'
token = "my token"
data = {
"first_name": "Reza",
"birthday": "1986-09-12"
}
headers = {"Content-Type" : "application/json", "x-api-key":"MY_API_KEY"}
response = requests.put(url, data=json.dumps(data), headers=headers)
print(response.text)
Но если я добавлю сегмент users
в конец URL-адреса следующим образом:
url = 'https://XXXXXXX.execute-api.us-east-1.amazonaws.com/default/myapi/users'
это покажет эту ошибку:
{"message":"Missing Authentication Token"}
Мне нужно добавить несколько статических сегментов, таких как users
, чтобы вернуть список всех пользователей, и некоторые динамические сегменты, такие как users/USER_ID
(когда USER_ID
- динамическое число), чтобы вернуть информацию для специального пользователя.
Подскажите, пожалуйста, как я могу использовать сегментированный URL в моем AWS API Gateway?