谷歌地图API错误"refused to load font"



我在angular2/Ionic2应用程序中使用谷歌地图,我收到以下错误:

js?librarys=几何图形,绘图,位置:79拒绝加载字体'https://fonts.gstatic.com/s/roboto/v15/isZ-wbCXNKAbnjo6_TwHThJtnKITppOI_IvcXXDNrsc.woff2'因为它违反了以下内容安全策略指令:"font src'self'数据:"。

这个错误是什么?我该如何修复它?

我的index.html有:

<meta http-equiv="Content-Security-Policy" content="font-src 'self' data:; img-src * data:; default-src * 'unsafe-eval' 'unsafe-inline'">
<script src="https://maps.googleapis.com/maps/api/js?libraries=geometry,drawing,places"></script>

删除meta标签解决了这个问题,但我不确定它的作用以及是否应该删除它。

这不是关于内联javascript,而是内联样式标记。要么你有它们(可能没有),要么你正在使用添加它们的东西(可能是jquery插件)。根据这个博客,您需要通过添加配置来启用它https://github.com/rwjblue/ember-cli-content-security-policy#options进入您的config/environment.js

默认contentSecurityPolicy值为:

 contentSecurityPolicy: {
    'default-src': ["'none'"],
    'script-src':  ["'self'"],
    'font-src':    ["'self'"],
    'connect-src': ["'self'"],
    'img-src':     ["'self'"],
    'style-src':   ["'self'"],
    'media-src':   ["'self'"]
  }

查看这些相关链接:在ember cli 0.0.47升级后违反内容安全策略指令和"[仅报告]拒绝加载字体"控制台上的错误消息

最新更新