Я пытаюсь отправить запрос на получение из браузера на свой бэкэнд (node + express). Но почему-то мои заголовки не устанавливаются.
Вот интерфейс:
let accessToken = localStorage.getItem('accessToken');
fetch('http://localhost:3000/checkLogin', {
method: 'GET',
mode: same-origin,
withCredentials: true,
credentials: 'include',
headers: {
'Authorization': 'Bearer ' + accessToken,
'Content-Type': 'text/plain',
'X-Test':'test'
}
})
.then(data => {
console.info('Success:', data);
})
.catch((error) => {
console.error('Error:', error);
});
В бэкэнде я попытался включить настраиваемые заголовки:
server.use(function(req, res, next) {
console.info("CORS");
res.set('Access-Control-Allow-Origin', 'localhost:3000/testLogin');
res.set('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
res.set('Access-Control-Allow-Headers', 'Authorization, Content-Type, X-Test');
next();});
Я уже пробовал ответы на подобные вопросы, но ни один из них не помог.
когда я печатаю заголовки, полученные сервером, я получаю:
host: 'localhost:3000',
connection: 'keep-alive',
'cache-control': 'max-age=0',
'sec-ch-ua': '"Google Chrome";v = "89", "Chromium";v = "89", ";Not A Brand";v = "99"',
'sec-ch-ua-mobile': '?0',
'upgrade-insecure-requests': '1',
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36',
accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
'sec-fetch-site': 'same-origin',
'sec-fetch-mode': 'navigate',
'sec-fetch-user': '?1',
'sec-fetch-dest': 'document',
referer: 'http://localhost:3000/',
'accept-encoding': 'gzip, deflate, br',
'accept-language': 'de-DE,de;q=0.9,en-US;q=0.8,en;q=0.7'



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Указываемое вами происхождение недействительно. У него должна быть схема (например, http:// или https://). Также обратите внимание, что у истоков нет путей. Так, например, вместо 'localhost:3000/testLogin' это будет 'http://localhost:3000':
res.set('Access-Control-Allow-Origin', 'http://localhost:3000');
все еще не работает
я ошибся получить с постом. теперь работает :)
@TimmNicolaizik - Угу! Мы все поступали так. :-) Рад, что вы все поняли!
плохо отменить мое редактирование извините