首页 > 解决方案 > Electron:谷歌字体违反了内容安全政策

问题描述

我在 Electron 开发人员控制台中收到一堆内容安全策略错误,用于添加 google 字体:

拒绝加载样式表“https://fonts.googleapis.com/css2?family=Inter:wght@300;400&display=swap”,因为它违反了以下内容安全策略指令:“default-src 'self' 'unsafe-内联'数据:"。请注意,'style-src-elem' 没有明确设置,所以 'default-src' 用作后备。

我正在使用 electron-forge 的 React 和 TypeScript 样板。

标签: electronelectron-forge

解决方案


最简单的方法可能是在模板的标题中设置 Content-Security-Policy 元标记,如下所示:

<head>
    <meta charset="UTF-8">
    <!-- https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP -->
    <meta 
        http-equiv="Content-Security-Policy" 
        content="default-src 'self'; 
          script-src 'self'; 
          font-src 'self' https://fonts.gstatic.com;
          style-src 'self' https://fonts.googleapis.com">
    <!-- ...other stuff... -->
</head>

关于如何使用这些的指南在这里: https ://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy#multiple_content_security_policies

我自己目前正处于电子的第一个小时,暂时没有反应,这就是我解决它的方式,我认为这就是你应该这样做的方式。


推荐阅读