javascript - 为什么 Chrome 没有收到我的 cookie?
问题描述
我已经建立了一个网络服务器,并提供了一条路线。当我击中它时,curl
我得到:
$ curl -i -X POST http://dev.com:5000/user/check
HTTP/1.0 200 OK
Content-Type: application/json
Content-Length: 40
Access-Control-Allow-Origin: *
Vary: Cookie
Set-Cookie: session=eyJjaGVjayI6dHJ1ZX0.Dij_Ng.OL7a0pycpZgU45zEIzC5ZTfeCdk; Domain=.dev.com; HttpOnly; Path=/
Server: Werkzeug/0.14.1 Python/3.6.5
Date: Thu, 12 Jul 2018 15:03:18 GMT
{
"result": null,
"status": "ok"
}
但是,当我在 Chrome 中点击它时,调试控制台会报告:
一般的
Request URL: http://dev.com:5000/user/check
Request Method: POST
Status Code: 200 OK
Remote Address: 127.0.0.1:5000
Referrer Policy: no-referrer-when-downgrade
响应标头
Access-Control-Allow-Origin: http://localhost:8080
Content-Length: 40
Content-Type: application/json
Date: Thu, 12 Jul 2018 15:04:10 GMT
Server: Werkzeug/0.14.1 Python/3.6.5
Vary: Origin, Cookie
请求标头
Provisional headers are shown
Accept: application/json, text/plain, */*
Origin: http://localhost:8080
Referer: http://localhost:8080/
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36
不返回任何 cookie。这是怎么回事?
解决方案
我在我的本地主机上进行了类似的测试,发现了同样的问题。
我在我的网站上创建了一个 php 页面,该页面以包含example.com
类似Set-cookie
标题domain
和其他值的方式进行响应。
测试 1
我将该页面称为<script src="http://example.com/my.php">
from localhost
。
Chrome 网络选项卡没有显示Set-cookie
标题Response Headers
,但设置了 cookie ,我在 devtools的应用程序选项卡中确认了这一点。
测试 2
此外,在此页面上,我从控制台使用 向 php 页面发出另一个请求document.createElement('script')
,设置其src
属性,然后将该元素附加到正文。
但是,Request Headers
不包含任何Cookie
标题。
测试 3
我打开另一个选项卡,打开 devtools,然后键入http://example.com/my.php
并按 Enter。
这一次Cookie
,出现在Request Headers
.
此外,在测试 1 和测试 2 中,Request Headers
显示为临时标题,但在测试 3 中并非如此。
我想知道这是不是domain
参数的问题。
推荐阅读
- javascript - 为什么在同一页面上添加 innerHTML 后切换类不起作用
- c# - 如果在 foreach 中编辑,VSC17 调试空变量
- mysql - 使用条件选择和求和选择不同的行
- docker - 如何在 Docker 上以 root 模式运行 GUI 应用程序
- java - Swing - 在 setVisible(false) 空间仍然存在之后
- spring - Spring Boot 2:无法到达控制器方法
- visual-studio-code - 无法通过 VS Code 运行 python 代码。无法打开文件 ptvsd_launcher.py [Errno 22] 无效参数
- php - 建议:800万发送请求
- ruby-on-rails - 创建新的 RailsApp 时 Rails_uis 抛出错误
- excel - 如何从 VBA 代码操作 Excel 2010 UI?