我正在编写一个简单的登录处理程序。除了设置 cookie 之外,一切正常。
这是代码:
.
.
.
cookie := &http.Cookie{
Name: credentials.EmailAddress,
Value: sessionKey,
MaxAge: 600,
Path: "/",
Domain: "localhost",
Secure: false,
HttpOnly: false,
}
http.SetCookie(ctx.Writer, cookie)
SendResponse(ctx, Response{
Status: http.StatusOK,
Message: "successfully logged in",
})
return
我也尝试过使用 Gin Gonic 方法,但同样的事情:
.
.
.
ctx.SetCookie("name", "value", 600, "/", "localhost", false, false)
SendResponse(ctx, Response{
Status: http.StatusOK,
Message: "successfully logged in",
})
return
我不确定我做错了什么。我在 Postman 和浏览器中都没有收到 cookie。如果有人知道解决方案,请提前致谢。
事实证明有些东西终究是无效的。我将 cookie 名称更改为“session-cookie”并将值更改为会话 uuid,现在它可以工作了。我不确定以前的代码有什么问题,因为我没有使用任何非 ASCII 字符。如果有人知道设置 cookie 名称和值的规则,请随时分享。无论如何,感谢@Volker 和@mrasoolmirza 的帮助。