Поддерживает ли Axios Set-Cookie?Можно ли пройти аутентификацию через HTTP-запрос Axios? - PullRequest
0 голосов
/ 28 сентября 2018

Я пытаюсь аутентифицировать серверную часть экспресс-API с помощью HTTP-запроса Axios.Мне удалось увидеть «Set-Cookie» в заголовке ответа, но cookie не был установлен.Можно ли устанавливать файлы cookie через HTTP-вызовы Axios?

Access-Control-Allow-Origin: *
Connection: keep-alive
Content-Length: 355
Content-Type: application/json; charset=utf-8
Date: Fri, 28 Sep 2018 05:59:01 GMT
ETag: W/"163-PAMc87SVHWkdimTJca7oRw"
Set-Cookie: token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...; Max-Age=3.6; Path=/; Expires=Fri, 28 Sep 2018 05:59:04 GMT; HttpOnly
X-Powered-By: Express

Ответы [ 2 ]

0 голосов
/ 18 октября 2018

Да, вы можете установить куки Axios .Файлы cookie должны быть переданы в объект заголовков.Вы можете отправлять куки в get / post / put / delete / etc.Запрос: В соответствии с предложением Аарона:

axios.get('URL', {
  withCredentials: true
}); 
axios.post('URL', data, {
withCredentials: true
}); 
axios.put('URL', data, {
withCredentials: true
});
axios.delete('URL', data, {
withCredentials: true
});

Или вы также можете попробовать это:

axios.get(url, {
            headers: {
                Cookie: "cookie1=value; cookie2=value; cookie3=value;"
            }
        }).then(response => {
              console.log(response);
});
0 голосов
/ 28 сентября 2018

Попробуйте!

axios.get('your_url', {withCredentials: true}); //for GET
axios.post('your_url', data, {withCredentials: true}); //for POST
axios.put('your_url', data, {withCredentials: true}); //for PUT
axios.delete('your_url', data, {withCredentials: true}); //for Delete

Для получения дополнительной информации об этом из документов axios:

"withCredentials указывает, должны ли запросы управления доступом между сайтами выполняться с использованием учетных данных"- https://github.com/axios/axios

Подробнее о withCredentials:

https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/withCredentials

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...