You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何阻止Dialogflow Messenger加载Google Fonts以符合德国法律?

阻止Dialogflow Messenger加载Google字体的解决方案

方法1:自定义CSS强制覆盖字体

直接通过样式优先级替换Dialogflow Messenger的默认字体引用,避免触发外部字体加载:

/* 覆盖组件所有元素的字体,改用系统无衬线字体 */
df-messenger,
df-messenger * {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif !important;
}

将这段代码添加到嵌入组件的页面样式中,组件会直接使用本地系统字体,不再请求fonts.google.com的资源。

方法2:通过内容安全策略(CSP)拦截请求

在页面的<head>中添加CSP元标签,禁止加载外部字体资源:

<meta http-equiv="Content-Security-Policy" content="font-src 'self' data:; style-src 'self' 'unsafe-inline';">

该规则限制字体仅能从当前域名('self')或data URI加载,同时允许内联样式(适配Dialogflow Messenger的内置样式需求)。当组件尝试请求fonts.google.com的字体时,浏览器会直接拦截该请求。

方法3:本地托管字体替换(如需保留特定字体样式)

如果需要使用原字体样式但不想依赖Google服务器,可以将字体文件下载到本地托管:

  1. 下载目标Google字体的文件包(例如Roboto),放到项目的静态资源目录
  2. 在页面中引入本地字体:
@font-face {
  font-family: 'Roboto';
  src: url('/fonts/Roboto-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
  1. 用自定义CSS让Dialogflow Messenger使用这个本地字体,彻底切断外部请求。

内容的提问来源于stack exchange,提问作者Paul Werner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 22:10:30