33

我正在开发一个带有 Go 的小型站点,并且正在尝试从我的服务器设置一个 cookie。

我在 localhost 上运行服务器, 127.0.0.1 别名为subdomain-dev.domain.comon port 5080

我的当我收到我的回复时,我POST可以subdomain-dev.domain.com:5080/login看到标题set-cookie。响应如下所示:

HTTP/1.1 307 Temporary Redirect
Location: /
Set-Cookie: myappcookie=encryptedvalue==; Path=/; Expires=Fri, 13 Sep 2013 21:12:12 UTC; Max-Age=900; HttpOnly; Secure
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Date: Fri, 13 Sep 2013 20:57:12 GMT

为什么 Chrome 或 Firefox 不记录这个?在 Chrome 中,它不会显示在“资源”选项卡中。在FF我也看不到。而且我在未来的请求标头中也看不到它。

4

3 回答 3

50

看到Securecookie 中的那个字符串了吗?

我也是。但仅仅过了几个小时。

如果您设置了安全标志,请确保您通过 SSL(URL 开头的 https://)访问您的站点。

如果您在本地开发并且没有证书,请确保跳过该选项。

于 2013-09-13T21:41:27.007 回答
13

就我而言,我不得不将其添加到我的回复中:

access-control-expose-headers: Set-Cookie

我在这里发现我的 Set-Cookie 标头无法访问我的客户端,除非我将它添加到暴露的标头标头中。希望这可以帮助某人!

于 2020-07-23T13:13:11.273 回答
0

如果您设置 cookie 并从子域使用它,请设置 domain=.example.com。

于 2022-02-15T19:54:22.547 回答