Вы сможете обойти это для локального тестирования, явно добавив следующие заголовки к вашему ответу в функции обработчика:
"Access-Control-Allow-Origin": "*"
Вы можете использовать переменную среды, которая добавляет заголовки, только если вы работаете локально.
Вот простой пример Python из имеющейся у меня функции обработчика:
if not all(field in values for field in required_fields):
response = {
'statusCode': 400,
'body': json.dumps(
{
'message': 'Required data missing from request body'
}
)
}
# explicitly add CORs headers for local testing
response['headers'] = {"Access-Control-Allow-Origin": "*"}
return response
Это подходит только для локального тестирования, когда развертывание в API-интерфейсе шлюза API выполняется с помощью конфигурации на API-шлюзе.
Это решение работало для меня, пока я не добавил авторизацию в API с пулом пользователей Cognito, через который я сейчас пытаюсь работать.
Вот аналогичный пост по этому вопросу:
Как включить CORS для ресурса шлюза API AWS
Вот ссылка на это в официальной документации AWS.