gpt4 book ai didi

google-chrome - 为什么 Chrome 有时会再次要求基本身份验证而 Firefox 不会?

转载 作者:行者123 更新时间:2023-12-04 12:52:29 25 4
gpt4 key购买 nike

我在基本身份验证后面的 Nginx 服务器(宅基地 Vagrant 框)上运行 React 前端和 Laravel 后端,Nginx 配置如下所示:

server {
...
location / {
try_files $uri $uri/ /index.php?$query_string;
auth_basic "Restricted";
auth_basic_user_file /home/vagrant/Code/project/.htpasswd;
}
}

这基本上运行正常,Chrome(v52,Mac OS X)“有时”会在后续请求中再次要求进行身份验证,例如在按钮悬停时加载定义为 css-background 的图像。这种行为(至少对于我目前的研究而言)不一致,我无法定期重现它,它不时发生,我找不到后续身份验证请求的原因。

在 Firefox (v47.0, Max OS X) 中,我收到一个身份验证提示,然后它按预期工作。

您知道如何调试 Chrome 中的特定行为或确保第一个身份验证提示是唯一的吗?

注意:前端向后端发送一些进一步的 XHR 调用,这些调用也设置了“授权” header 以在不显示提示的情况下完成基本身份验证。

最佳答案

我怀疑这里的问题在于您如何在本地存储授权 token 以及它的有效时间。浏览器处理本地存储的方式略有不同,因此如果您使用本地存储或 session 存储,可能只是数据持久化方式不同。

我相信这篇 SO 帖子可能有助于回答这个问题:How persistent is localStorage?

基本上,Chrome 允许数据设置超时期限,而在 Firefox 中“无法为您的任何数据指定到期期限”。

如果您经常使用 Chrome 并出于其他原因清除缓存,则您可能还会清除您的身份验证 token 。如果您仅使用 Firefox 进行测试,您可能有一个未过期的缓存身份验证 token 。

关于google-chrome - 为什么 Chrome 有时会再次要求基本身份验证而 Firefox 不会?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38971953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com