我想更改在执行基本身份验证期间弹出的消息。当前的默认消息是:
Server requires a username and password.
对我来说更准确的是:
Server requires an Email and Password.
我的问题是我无法找到或不知道此消息的设置位置以及是否可以更改。大多数在线问题都是关于 Basic Auth 实现的,但这不是我的问题——我可以很好地实现它。我只需要为用户提供更准确的响应。
以下是我如何使用 echo 强制验证窗口:
c.Response().Header().Set(echo.HeaderWWWAuthenticate, `Basic realm="Your Email is your Username"`)
return echo.ErrUnauthorized
注意:只有 Firefox 会显示领域消息。 Chrome 和 Opera 都没有。
最佳答案
这与 Go 无关,但实际上与接收该 header 时的浏览器行为有关。
Chrome/Chromium 似乎有一个已知问题,与开发团队认为不安全的功能有关,所以我认为除非您求助于其他身份验证,否则您无法自行修复它机制。
详情请看这里:
https://bugs.chromium.org/p/chromium/issues/detail?id=544244#c32
关于http - 更改基本 HTTP 身份验证领域和登录对话框消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45666306/