javascript - 当我尝试加载 css 样式表时出现快速 MIME 错误
问题描述
在尝试将样式表引入我的应用程序时,我不断收到以下 MIME 错误:
我已经关注这个 MIME 错误的最新问题几个小时了,但没有运气。我已经告诉我的 Express 开发服务器从静态文件中提取资源,但仍然没有运气。这是我的开发层次结构:
我将在下面包含我的代码。任何帮助表示赞赏。
**index.html**
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="subject" content="">
<meta name="author" content="">
<link rel="stylesheet" href="/public/styles/customStyles.css">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1" crossorigin="anonymous">
<title>Clone Application</title>
</head>
<body>
<div class="conatiner-fluid">
<nav class="nav-wrapper">
Hello Again
</nav>
Hello World
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.bundle.min.js" integrity="sha384-ygbV9kiqUc6oa4msXn9868pTtWMgiQaeYH7/t7LECLbyPA2x65Kgf80OJFdroafW" crossorigin="anonymous"></script>
</body>
</html>
**Server.js**
const express = require('express');
const app = express();
const router = require("./router");
const path = require("path");
const PORT = 3000;
app.use(router, express.static('public'));
app.listen(PORT, () => {
console.log("Listening on port: " + PORT);
});
**router.js**
const express = require('express');
const router = express.Router();
const pages = "/public/pages/";
router.get('/home', (req, res) => {
res.sendFile(__dirname + "/public/pages/home/index.html")
})
module.exports = router;
解决方案
您的 HTML 链接到样式表/public/styles/customStyles.css
但是,正确的 URI 是/styles/customStyles.css
(或者最好没有第一个斜杠,styles/customStyles.css
因此如果页面不在根目录中,它将继续工作)。
app.use(router, express.static('public'));
告诉 express 在“公共”文件夹下提供静态文件,因此将“公共”添加到您的 CSS URI 是不正确的。
由于 Express 默认错误页面('Cannot GET..'),您将获得 HTML MIME 类型
推荐阅读
- postgresql - 使用没有所有者信息的 pg_dump 仍然输出角色信息
- node.js - 将 Web 应用程序的基本 URL 更改为主机的子域
- azure - AzureWebSites 上的 CORS(同源?)
- flutter - 绘制卡片的一面 - Flutter
- node.js - 如何在主机网络模式下访问 NodeJs 应用程序中的容器 ID
- sql-server - 创建主键
- java - 如何找到 ImageIcon 所需图像的 java.net.URL?
- asp.net - Docker 不允许使用 System.DirectoryServices.AccountManagement
- reactjs - 我无法弄清楚为什么警报没有显示 this.state.word 字符串
- c - 练习 9.7 Kochan。奇怪的输出