authentication - 由于dotnet core的身份验证问题,Angular 8差异加载失败

标签 authentication .net-core angular8

我最近使用ng update从Angular 7更新到Angular 8。遵循预期的迁移路径,没有问题后,我进行了构建和部署。在开始检查其他浏览器版本之前,一切工作都很好,并且意识到有些服务器在请求js文件时从服务器获取了401 unauthorized

问题是,差分加载是这样完成的:
<script src="main-es2015.1234.js" type="module"></script>
似乎有些浏览器有时不希望传递<script type="module" ...的身份验证信息。令我惊讶的是,有几种方法可以解决此问题:

  • 我可以通过在脚本标签中添加crossorigin="use-credentials"来解决此问题,但是我无法在ng build中找到如何做到这一点。
  • 我可以调整auth设置,以某种方式允许匿名请求通过我的JS文件,但是我没有找到没有很多复杂性的dotnet核心方法。现在,整个应用仅允许Windows身份验证。如果允许匿名,则不必担心我将 Controller 保持打开状态。

  • 我认为前一种选择是更清洁的解决方案,但我愿意接受其他选择。

    最佳答案

    自发布接受的答案以来,McAden通过添加crossorigin =“use-credentials”建议的第一种方式来处理此问题的选项已添加到Angular CLI选项中。

    Original feature request

    Angular CLI documentation

    在您的angular.json中添加

    {
       ...,
       "build": {
         "builder": ...,
         "options": {
            ...
            "crossOrigin": "use-credentials"
         }
       }
    }
    

    关于authentication - 由于dotnet core的身份验证问题,Angular 8差异加载失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56777096/

    相关文章:

    java - Java 中的 SSL key 和客户端身份验证

    .net-core - 在 Visual Studio 2017 中启动操作 : Don't open page with . NET Core

    javascript - 用前导零填充输入

    javascript - 如何将编码字符串作为参数发送到 Angular 中的url字符串并在新选项卡中打开

    authentication - nfs 挂载认证失败

    security - 双因素身份验证如何与随机数一起使用?

    c# - 提供程序 'SqlServer-20' 没有元数据信息

    azure - 如何使用 StackExchange.Redis 为 Azure Redis 缓存的所有 key 全局设置 key 过期值?

    javascript - '{}' 类型的参数不可分配给 Angular 8 中类型的参数

    php - 登录成功后重定向到新页面