javascript - 为什么 post 请求不发送 cookie?
问题描述
我正在尝试将包含我的刷新令牌的 HTTPonly cookie 发送到我的服务器。cookie如下所示
res.cookie('refreshtoken', token, {
httpOnly: true,
sameSite: 'strict',
path: '/refresh_token',
expires: new Date(Date.now() + 7 * 216000000) // Token expires in 7 days
});
我正在向在同一端口/域上运行的服务器发出发布请求,因此它不需要 cors。当我查看发送的请求时,没有发送任何 cookie。我在 localhost 上运行我的服务器,这可能会导致问题,但我不确定。
无论我使用同源还是包含凭据,都不会发送 cookie。
const result = await (
await fetch('http://localhost:5000/api/refresh_token', {
method: 'POST',
credentials: 'same-origin',
headers: {
'Content-Type': 'application/json',
}
})).json();
解决方案
对于将来阅读本文的任何人,路径是指绝对路径。所以 'api/refresh_token' 不会与 '/refresh_token' 匹配。这允许发送我的 cookie。
推荐阅读
- amazon-web-services - 从另一个 VPC 访问 VPC 对等连接
- wordpress - Wordpress 网站没有正确显示菜单部门
- javascript - 如何从数组中获取 X 个唯一项
- python - 鼠标悬停折线图时如何添加数据标签?(Matplotlib)
- python - 如何在编写之前使用flask-sqlalchemy检查mysql数据库中的重复项
- flutter - 如何在列表构建器中添加存储内存(shared_preferences)
- python - 使用 selenium Python3 遍历表并从数据中提取信息
- angular - 如何在 Angular/TypeScript 中显示枚举实体名称?
- sql - SQL Server,它是在游标中使用 2 的一种方式
- php - laravel中的别名表列值?