Node.Js:资源解释为字体但使用 MIME 类型 text/html 传输
Posted
技术标签:
【中文标题】Node.Js:资源解释为字体但使用 MIME 类型 text/html 传输【英文标题】:Node.Js: Resource Interpreted as Font but Transferred with MIME Type text/html 【发布时间】:2014-10-16 14:37:30 【问题描述】:我的网站上的图标(由 Node.Js 提供)未呈现,我看到标题中指出的错误。我正在为我的服务器使用这个脚本...... https://github.com/joeeames/AngularFundamentalsFiles/blob/master/web-server.js
line 98下面我加了...
'woff':'application/font-woff'
我也...
npm install mime
但我所做的一切似乎都不起作用。有谁知道如何解决这个问题?来自控制台的具体错误是...
Resource interpreted as Font but transferred with MIME type text/html: "https://<my_site>/bower_components/font-awesome/fonts/fontawesome-webfont.woff?v=4.1.0".
我看到 TTF 和 SVG 类型的类似错误。
【问题讨论】:
【参考方案1】:这可能意味着您正在请求的资源没有匹配的路由,因此服务器正在向下发送索引页面。如果您在浏览器的开发人员工具中查看请求的内容,您应该会看到它是一个正在返回的 html 文档。您需要诊断为什么您请求的内容除了提供 index.html 页面的默认路由之外没有匹配的路由。
【讨论】:
是的,这正是问题所在。对不起,本想回答这个问题,但你打败了我!我使用 Bower 在我的项目中包含 font-awesome,并使用 Grunt 来构建它。 font-awesome CSS 指定了字体的位置,但该文件未包含在我的 Grunt 构建工件中,因此它返回了 404,NodeJS 服务器会将其作为 text/html 类型发回。通过 CDN 使用 font-awesome 是我选择的解决方案。以上是关于Node.Js:资源解释为字体但使用 MIME 类型 text/html 传输的主要内容,如果未能解决你的问题,请参考以下文章
压缩 css 文件导致 glyphicon 字体无法呈现:资源解释为字体但使用 MIME 类型 text/plain 传输
谷歌浏览器给出警告资源解释为字体但使用 MIME 类型应用程序/八位字节流传输:
font-face+chrome+django:如何避免消息“资源解释为字体但使用 MIME 类型应用程序/八位字节流传输。”
资源解释为字体,但使用 MIME 类型 text/html 传输:“http://localhost:3000/fonts/glyphicons-halflings-regular.woff”