[英]possible to add crossorigin attribute to script tags generated by angular cli?
是否可以将 crossorigin 属性添加到由 angular cli 生成的脚本标签?
运行我的 angular 应用程序时,脚本标签被添加到我的 index.html 的末尾:
<script src="runtime-es2015.3d05cbd29d24231258bf.js" type="module"></script>
<script src="polyfills-es2015.28da6787754ec8436843.js" type="module"></script>
<script src="main-es2015.4106b7f4d43a05cb792d.js" type="module"></script>
是否可以配置 angular-cli,以便在构建 index.html 中包含这些标签时,将 crossorigin 属性添加到脚本声明中:
<script src="runtime-es2015.3d05cbd29d24231258bf.js" type="module" crossorigin="use-credentials"></script>
我为什么要问这个? 我的应用程序部署到使用基本身份验证的 apache 服务器。 使用 Firefox 或 Edge(chrome 很好)时,对 javascript 模块的请求会收到 401 错误,因为未设置 Authorization 标头。 如果添加了 crossorigin 标记,则设置 Authorization 标头。 因此,如果我希望我的用户能够使用 FF 或 Edge,我需要能够添加该 crossorigin 属性。
感谢您阅读我的问题。
从 angular/cli 8.1 ( PR ) 开始,可以设置一个标志来更改 index.html 中的脚本标签(以及与此相关的链接标签)
--crossOrigin=none|匿名|使用凭证
定义提供 CORS 支持的元素的 crossorigin 属性设置。 默认值:无https://angular.io/cli/build
另一种选择是使用 post build npm 步骤来解包 index.html 并根据各种需要对其进行更改
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.