【发布时间】:2018-03-16 21:28:54
【问题描述】:
当我使用浏览器发出 HTTP 请求以从我的 Apache 服务器获取 index.html 文件时,如果请求标头中不存在特定令牌,则有一个代理可以重定向我的登录流量。因此,初始请求的标头中没有令牌是有意义的,然后代理将强制重定向登录,登录后我将看到 index.html 文件以及响应标头中的相关令牌。
所以我的问题如下: 如果登录后服务器使用 index.html 文件响应响应头中带有特定令牌的响应,如何使浏览器自动将令牌附加到所有后续 http 请求上?
在我从服务器取回 index.html 文件后,浏览器将请求加载 index.html 文件中引用的应用程序所需的所有字体和库,但这些请求不会在请求标头中包含令牌,这反过来会导致浏览器再次被重定向以进行登录。这么粘稠的循环……
我正在考虑使用“Set-Cookie”让代理返回标头中的令牌,但 Chrome 不会在所有后续请求中自动添加该 cookie。邮递员似乎添加了标题,但没有添加 Chrome。我设置的 cookie 必须使用 HttpOnly 和 Secure 标签。所以我无法从 JavaScript 访问它。
如果还有其他问题,请告诉我。 提前致谢。
亲切的问候 弗朗索瓦
【问题讨论】:
-
“我正在考虑使用 'Set-Cookie' 让代理返回标头中的令牌,但 Chrome 不会在所有后续请求中自动添加该 cookie。” ——应该可以。您是否对不同的资源使用不同的主机名?或重定向以添加或删除 www?
-
"我设置的 cookie 必须使用 HttpOnly 和 Secure 标签" — 你的测试环境使用 HTTPS 吗?
-
我没有使用任何其他主机名,整个应用程序运行在具有一个 url 的单个节点上。
标签: javascript html apache http cookies