Javascript 节点服务空白页
我有一个index.html页面,位于: D:\GITProjects\codelab\complete\step1\index.html 我正试图通过节点执行D:\GITProjects\codelab\complete\step1\server.js文件: “C:\Program Files\nodejs>node.exe D:\GITProjects\codelab\complete\step1\server.js” Server.js代码:Javascript 节点服务空白页,javascript,node.js,windows,Javascript,Node.js,Windows,我有一个index.html页面,位于: D:\GITProjects\codelab\complete\step1\index.html 我正试图通过节点执行D:\GITProjects\codelab\complete\step1\server.js文件: “C:\Program Files\nodejs>node.exe D:\GITProjects\codelab\complete\step1\server.js” Server.js代码: var static = require('n
var static = require('node-static');
var http = require('http');
var file = new (static.Server)("D:\GITProjects\codelab\complete\step1");
var app = http.createServer(function (req, res) {
file.serve(req, res);
}).listen(2011);
当我去打:
我看到一页空白。知道为什么吗
控制台显示“加载资源失败:服务器响应状态为404(未找到)”您需要在
req.addListener()中保留file.service(req,res)
选项2:
使用web应用程序框架,如express()
。它提供了几个强大的功能来简化节点的功能。然后,您可以为“/”定义一个特定的路由来发送您的index.html
var express= require('express')
var app = express()
app.get('/',function(req,res){
res.sendFile('index.html',{ root:__dirname })
})
app.listen(2011)
或者直接为您的静态资产提供服务:
var express= require('express')
var app = express()
app.use(express.static(__dirname)); //this will make index.html available to every request
app.listen(2011)
\uuuu dirname
是当前正在执行的脚本所在的目录。由于server.js
和index.html
处于同一级别,\uuu dirname
将指向*D:\GITProjects\codelab\complete\step1*我需要在server.js的末尾写这个吗code@raj:抱歉,我以为您使用的是express()。使用代码修复程序和其他可用选项更新了答案
var express= require('express')
var app = express()
app.get('/',function(req,res){
res.sendFile('index.html',{ root:__dirname })
})
app.listen(2011)
var express= require('express')
var app = express()
app.use(express.static(__dirname)); //this will make index.html available to every request
app.listen(2011)