Chrome基本身份验证和摘要身份验证问题

0tdrvxhp  于 2022-12-16  发布在  Go
关注(0)|答案(1)|浏览(345)

我遇到了一些Chrome取消HTTP请求的问题,我怀疑缓存的认证数据是原因。让我先写下一些关于我正在编写的应用程序的重要因素。
1.一段时间以来,我一直在使用基本身份验证方案来保护我的Web应用程序中的多个服务和资源。
1.与此同时,我在使用/测试这款应用时大量使用Chrome,我的主谷歌账户完全同步。最频繁的是我在Basic Auth中使用我的名字“lukasz”作为用户名。
1.最近我将应用程序切换为使用摘要身份验证
1.现在,我用status=failed发出的一些HTTP请求失败了,没有明显的原因。只有当我使用用户“lukasz”时,如果我输入其他唯一的用户名,才会发生这种情况--没有问题。
我在后端和前端找遍了所有地方,但我找不到代码中的问题。我可以很容易地在每次使用用户“lukasz”时重现这个问题。所以我将代码恢复为Basic Auth(同时不触及应用程序的其余部分),问题就消失了。
这让我觉得缓存的密码有问题。所以我清除了Chrome中该高速缓存,但没有帮助。经过几个小时的分析,我决定确保我运行的是Chrome的新示例。所以我重新安装了(删除磁盘数据的过程沿着)。TADAAA!问题消失了,我不能再重现这个。然后我同步我的谷歌帐户使用这个新安装的Chrome浏览器,过了一会儿对我的应用程序的请求又开始失败了!!所以我更深入地研究了这个问题(从磁盘中清理配置文件数据并重做所有步骤),确实看起来问题在我的帐户与云同步后就开始了!
是的,我知道这听起来很狡猾。听起来很荒谬。听起来很愚蠢。但我几乎可以肯定这两个问题在某种程度上是相关的(失败的请求和帐户同步)。
我的想法是这样的:Chrome记得我在某些服务中使用了“lukasz/my-pass”和Basic Auth。在我切换到Digest Auth后,同样的证书组合(lukasz/my-pass)现在变得很奇怪。也许在幕后,Chrome仍然认为这是Basic Auth,并在发现其他情况时取消请求?

**更新:**我对chrome://net-internals/做了一些低级调试,发现问题是在阅读缓存条目时出现的。这似乎证明了我最初的假设。我做了一些调查,发现了this article。显然,总是在我的http响应中添加“Last-Modified”报头已经解决了Chrome中的问题(我在FF中仍然有一些问题,但这与主题无关)。然而,它仍然没有完全解决我的问题。为什么请求会失败?

xeufq47z

xeufq47z1#

你可以尝试使用隐身模式看看会发生什么,它可能会给予你一些提示,而不必清除该高速缓存或重新安装Chrome。
另请查看How to clear basic authentication details in chrome

相关问题