gpt4 book ai didi

vue.js - 从 axios 中的 response.headers 访问 Set-Cookie 值

转载 作者:行者123 更新时间:2023-12-05 08:10:41 45 4
gpt4 key购买 nike

我正在使用 VueJS 和 Axios 发送这样的请求:

 axiosAPI.get('/login/flows', {params: {id: 'string'}})
.then(res => {
console.log('cookie', res.headers)
}

作为返回,服务器向我发送此响应:

Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: Content-Type
Cache-Control: private, no-cache, no-store, must-revalidate
Content-Length: 646
Content-Type: application/json; charset=utf-8
Date: Thu,xxxx 13:56:21 GMT
Set-Cookie: csrf_token=Lxv3zynm1Fua0hU0/W1+R2w=; Path=/.ory/kratos/public/; Domain=x.y ; Max-Age=31536000; HttpOnly; SameSite=Lax
Vary: Origin
Vary: Cookie

如您所见,服务器在 Set-Cookies 中发送了一个 csrf-token。但是当我尝试打印出标题时,我无法获取和存储 csrf-token。此外,浏览器根本不会在存储部分存储 token 。

我需要在这个 cookie 中使用 csrf-token,但我不知道该怎么做?

注意:我无权访问后端代码。

最佳答案

也许您可以使用 axios-cookiejar-support。

https://www.npmjs.com/package/axios-cookiejar-support

一篇介绍如何使用它的媒体文章。

https://medium.com/@adityasrivast/handling-cookies-with-axios-872790241a9b

示例(从登录页面获取 cookie):

const axios = require('axios');
const wrapper = require('axios-cookiejar-support').wrapper;
const CookieJar = require('tough-cookie').CookieJar;

const jar = new CookieJar();
const client = wrapper(axios.create({ jar }));

const url = '<your url>';

const params = new URLSearchParams();
params.append('username', '<username>');
params.append('password', '<password>');
client.post(`${url}/Login`, params, {
headers: {
'Accept': '*/*'
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});

关于vue.js - 从 axios 中的 response.headers 访问 Set-Cookie 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70972629/

45 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com