在 Blazor Web App 中启用 强制实施内容安全策略 后报错

929Free 326 信誉分
2024-10-15T08:13:42.39+00:00

大家好, 我创建了一个 Blazor Web App (.Net 8 - Server) ,然后我在 根组件 (App.razor) 里的 <head>加入了以下代码

<meta http-equiv="Content-Security-Policy" content="base-uri 'self'; default-src 'self'; img-src data: https:; object-src 'none'; script-src 'self'; style-src 'self'; upgrade-insecure-requests;">

启动程序后, <script src="_framework/blazor.web.js"></script> 该js文件的具体路径在哪里额?我该如何对它进行 哈希运算呢?

Blazor
Blazor
一个免费的开源 Web 框架,使开发人员能够使用 Microsoft 开发的 C# 和 HTML 创建 Web 应用。
26 个问题
{count} 票

1 个答案

排序依据: 非常有帮助
  1. JasonPan - MSFT 6,256 信誉分 Microsoft 供应商
    2024-10-15T09:17:32.05+00:00

    Hi @929Free,

    请添加connect-src设置,可允许连接到本地服务器或 WebSocket。

    <meta http-equiv="Content-Security-Policy" content="base-uri 'self'; default-src 'self'; connect-src 'self' http://localhost:* ws://localhost:* wss://localhost:*; img-src data: https:; object-src 'none'; script-src 'self'; style-src 'self'; upgrade-insecure-requests;">
    

    此错误是在设置的 Content Security Policy (CSP) 中未允许 WebSocket 和其他需要的连接。默认情况下,default-src 'self' 限制了资源只能来自同一来源,而 BrowserLink 和 SignalR 使用的连接不符合这些要求。


    如果答案是正确的解决方案,请点击“接受答案”并投赞成票。如果您对此答案有其他问题,请点击“评论”。

    注意:如果您想接收此线程的相关电子邮件通知,请按照我们的 文档 中的步骤启用电子邮件通知。

    Best Regards

    Jason

    0 个注释 无注释

你的答案

问题作者可以将答案标记为“接受的答案”,这有助于用户了解已解决作者问题的答案。