===
Я создал собственный API с AWS API Gateway. Для одного из методов я включил проверку авторизации с помощью лямбда-функции. Чтобы заставить его работать, мне нужно добавить следующий ключ: Key: authorizationToken Value: allow
.
Я протестировал его с помощью Postman, и он работает нормально, мой POST обработан, и я получаю ответ.
Я только начинаю с Javascript, поэтому я использовал код, предоставленный в Postman. Вот он:
function getData(event){
var myHeaders = new Headers();
myHeaders.set("authorizationToken", "allow");
var requestOptions = {
method: 'POST',
mode: 'no-cors'
};
fetch("https://[THE_URL_OF_MY_API]/prod/counter", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
}
И я получаю следующее сообщение об ошибке в консоли.
script.js:49 POST https://[THE_URL_OF_MY_API]/prod/counter
net::ERR_ABORTED 401 (Unauthorized)
getData @ script.js:49
Я просмотрел журналы API-шлюза в AWS, чтобы устранить его:
- Но я не вижу никаких журналов, поэтому кажется моя выборка блокируется еще до отправки.
- Я проверил заголовки успешного вызова API, отправленного почтальоном, и не могу найти ни одного заголовка, кроме моего и заголовка, автоматически сгенерированного приложением.
Что я делаю не так?
Примечание: я использую аналогичный код для другой конечной точки, где авторизация не включена, и она работает нормально. Я думаю, мой заголовок установлен неправильно.
Спасибо!