rest - 由 Heroku 托管后未设置相同的站点 Cookie 属性
问题描述
我一直在尝试使用 Go 设置一个 rest api。一切正常,其余 api 正常工作,出于身份验证目的,我使用基于 JWT 的身份验证并发送一个 http-Only cookie 以成功登录请求。我在前端和后端使用跨站点,所以一切都启用了 cors。
这是http cookie的配置
http.SetCookie(w , &http.Cookie{
Name : "session_token",
Value : sessionToken,
Expires : time.Now().Add( 1 * time.Hour ),
HttpOnly: true,
MaxAge :2600000,
SameSite: 4,
Secure :true,
})
SameSite : 4
表示 SameSite: None 在 cookie 字符串中。供参考:https ://golang.org/src/net/http/cookie.go
当我在本地测试我的应用程序时curl
,set-Cookie 具有 SameSite 属性,但是当我在 Heroku 上部署应用程序时,SameSite 属性消失并且不再存在。由于 chrome 的 CSRF 伪造规则,我绝对需要 SameSite 属性。
我不知道如何解决这个问题,对此的任何帮助将不胜感激。
解决方案
推荐阅读
- laravel - 如何在“post sayı”列中显示用户的帖子数?
- sed - sed 命令替换文件中的第一个匹配项
- amazon-web-services - 试图将所有流量从 EC2 重定向到容器
- c++ - 在一个程序中使用具有内部和外部链接的变量名
- json - Swift UI 获取 JSON
- java - 在 android studio 中从 Uri 获取路径文件
- java - bean初始化-我收到AssertionError:尚未实现
- lisp - 格式化长字符串的奇怪行为
- python - 根据python中列的标签创建groupby
- vue.js - Vue Router如何加载第二个组件加载