Fetch ничего не возвращает - PullRequest
0 голосов
/ 10 октября 2019

Я делаю API с лямбда-шлюзом aws и шлюзом API, но когда я делаю запрос с fetch, он ничего не возвращает и выдает сообщение «Нет заголовка« Access-Control-Allow-Origin »на запрошенном ресурсе»

Я попытался использовать curl и другой веб-сайт для выполнения этого запроса, и ответ был

{"statusCode":200,"headers":{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"POST"},"body":"oi"}

И это то, что я ожидал, но используя fetch в jsкод возвращает мне ошибку: "No 'Access-Control-Allow-Origin' header is present on the requested resource"

И Access-Control-Allow-Origin уже находится в заголовке ответа

Лямбда-код:

    callback(null, {
        statusCode: 200,
        headers: {
            "Access-Control-Allow-Origin":"*",
            "Access-Control-Allow-Methods":"POST"
        },
        body: "oi"
    })
}

получить код:

fetch('URL', {
    method: 'POST',
})
.then((oi) => oi.json())
.then((json) => console.log(json))

Ответы [ 2 ]

0 голосов
/ 11 октября 2019

Я решил проблему, перейдя в консоль aws в API-шлюзе и установив там заголовки, а не просто в коде

0 голосов
/ 10 октября 2019

Без дополнительной информации это сложно диагностировать, но я бы предположил, что вам нужно включить CORS в лямбда-функции AWS. Не видя части лямбда-кода, трудно оказать вам какую-либо помощь.

...