我的页面上有基本身份验证。验证了我对页面的请求及其资源(CSS等)后,便有了Authentication标头
Authorization Basic NOTREALNOTREALNOTREALNOTREALNOTREAL=
在正文末尾,我正在加载一个外部脚本。
<script type="module" src="/main.js"></script>
此请求未与身份验证标头一起发送。这是页面上唯一没有的东西。这会导致带有以下标头的401响应
WWW-Authenticate Basic realm="mydomain.com"
在chrome和Firefox中都会发生这种情况。
有人知道为什么会这样吗?如何发送?
答案 0 :(得分:2)
Looks like this is a quirk of <script type="module">
,这会将它们全部视为CORS请求,因此默认情况下它们不发送Authentication标头。
可以通过在脚本标签中添加crossorigin="use-credentials"
属性来解决此问题:
<script type="module" src="/main.js" crossorigin="use-credentials"></script>
应该工作。