nodejs构建本地web测试服务器 如何解决访问静态资源问题

前端之家收集整理的这篇文章主要介绍了nodejs构建本地web测试服务器 如何解决访问静态资源问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

直接打开html文件,是以页面。

一、构建静态服务器

1、使用express模块

建立个js文件,命名server,内容代码如下:

//指定静态资源访问目录
app.use(express.static(require('path').join(dirname,'public')));
// app.use(express.static(require('path').join(
dirname,'views'))); 如果有文件夹存放资源,出现报错的话,那就多use几次就可以了
// 设定views变量,意为视图存放的目录
app.set('views',(dirname + "/public"));
// app.set('views',
dirname);
// 修改模板文件的后缀名为html
app.set( 'view engine','html' );
// 运行ejs模块
app.engine( '.html',require( 'ejs' ).__express );

app.get("/",function(req,res) {
res.render('index');
});

var server = app.listen(1336,"127.0.0.1",function(){
var host = server.address().address;
var port = server.address().port;
console.log("Server running at http://%s:%s",host,port)
});

文件结构如下:

运行的话只要执行:node server.js 就可以了

然后在浏览器输入文件夹内的文件

2、使用connect模块

建立个js文件,命名 server2 ,内容代码如下:

var app = connect();
// app.use(serveStatic("C:\xxx\xxx\xxx\项目文件夹"));
app.use(serveStatic("public"));

app.listen(1337);
console.log('Server running at http://127.0.0.1:1337/');

运行的话只要执行:node server2.js 就可以了,

然后在浏览器输入文件夹内的文件了。(如果是index.html文件可以省略不写,默认加载的就是这个文件);

3、使用http模块

建立个js文件,命名 server3 ,内容代码如下:

// Serve up public/ftp folder
var serve = serveStatic('public',{'index': ['index.html','index.htm']})

// Create server
var server = http.createServer(function onRequest (req,res) {
serve(req,res,finalhandler(req,res))
})

// Listen
server.listen(1338);
console.log('Server running at http://127.0.0.1:1338/');

运行的话只要执行:node server3.js 就可以了,

然后在浏览器输入文件夹内的文件了。

注:总的文件目录如下:

源码下载地址:

二、解决访问静态资源

主要使用两个模块

1.通用的 serve-static 模块

详细文档:

2.express专属的

方法

详细文档:nofollow" href="http://expressjs.com/en/4x/api.html">http://expressjs.com/en/4x/api.html ,然后ctrl+F搜索 express.static ,就能找到对应的说明了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

猜你在找的Node.js相关文章