Вот мой код:
app.use(function(req, res, next) {
res.header('Access-Control-Allow-Origin', 'http://localhost:3000');
res.header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE');
res.header('Access-Control-Allow-Headers', 'Content-Type');
res.header('Access-Control-Allow-Credentials', true);
next();
});
app.post('/cookie',function(req, res){
res.cookie('test', 'cookie_value', {httpOnly: false});
return res.send('cookie has been set!');
});
Это на стороне сервера.Как клиент, я отправляю запрос POST:
fetch('https://MyServer.com/cookie', {
method: 'POST',
credentials: 'include',
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json'
},
body: JSON.stringify(userData)
});
И я хочу получить cookie в качестве клиента.Проблема в том, что я могу получить "cookie был установлен!"в качестве ответа, но нет файла cookie и заголовка «Set-Cookie» или чего-то подобного в ответе.Глядя на devtools F12 на вкладке приложения, я вижу, что нет файлов cookie, и ответ на вкладке сети выглядит так:
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: Content-Type
Access-Control-Allow-Methods: GET, POST, PUT, DELETE
Access-Control-Allow-Origin: http://localhost:3000
Connection: keep-alive
Content-Length: 20
Content-Type: text/html; charset=utf-8
Date: Thu, 14 Mar 2019 12:21:35 GMT
ETag: W/"14-F3kI2UkV9f/5WImUwr2a1XDtzl4"
X-Powered-By: Express
Что не так?