我来自(传统的)服务器端脚本(PHP)背景,我正在尝试使用 Node 来看看有什么大惊小怪的。
目标:提供一个简单的 Web 文档,上面有一些样式表和脚本。
我的 node.js 脚本:
var http = require('http');
var fs = require('fs');
fs.readFile('index.html', function (err, html) {
if (err) {
throw err;
}
http.createServer(function(request, response) {
response.writeHeader(200, {"Content-Type": "text/html"});
response.write(html);
response.end();
}).listen(1337, '127.0.0.1');
});
索引.html:
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<title>Node.js test</title>
<link rel="stylesheet" media="screen" type="text/css" href="css/plugin.css" />
<link rel="stylesheet" media="screen" type="text/css" href="css/xGrid.css" />
<link rel="stylesheet" media="screen" type="text/css" href="css/jquery-ui/jquery-ui-1.10.1.custom.min.css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<script src="js/slate.js"></script>
<script src="js/slate.portlet.js"></script>
<script src="js/slate.message.js"></script>
<script src="js/plugin.js"></script>
</head>
<body>
<h1 class="styled-h1">Test</h1>
</body>
</html>
我面临的问题:
这两个脚本包括来自 Google CDN 的加载到文件中的罚款。但是,从我的本地文件系统调用的所有其他样式表或脚本都被解释为text/html
,因此没有预期的效果。这是来自 Google Chrome 控制台的屏幕截图:
我想了解为什么会这样。
PS:我知道我可以使用像 Express 这样的框架让事情变得更简单,但我想先掌握基础知识。