首页/前端开发工具/node.js 开启服务代码 |nodejs搭建本地http服务器代码

node.js 开启服务代码 |nodejs搭建本地http服务器代码

发布-xiaoming | 浏览量-

由于不做php,java相关的东西,懒得装apache,干脆利用nodejs搭建一个本地的服务器用于测试。

nodejs这玩意儿吧,对做前端的介入后端简直就是一把利器。而且目前,nodejs也越来越有商用价值。

nodejs其实是非常底层的,从功能上说,它既是apache也是php。像搭建http服务器这种功能,本来是apache已经封装好的,但nodejs需要我们手动来搭建。其实在实际应用中,我们可以使用现成的框架。但这里,我想手动搭建,也加深一下对http服务器的理解。

首先是安装nodejs 点击这个链接进入nodejs首页 http://www.nodejs.org

window+R  打开运行 输入 cmd

再输入 node -v  查看版本号 确认node是否安装成功

node执行下面这个文件,我命名为sever.js,它将创建一个httpServer并监听8089端口。

node sever

//文件开始

var http = require('http');

var fs = require('fs'); //fs

var path = require('path');

var duankou = 8089; //本地服务器端口号,可以自己设置

//var documentRoot = '/Users/zhangxiaoming/Documents';

var documentRoot = __dirname;//总是返回被执行的 js 所在文件夹的绝对路径 

var server = http.createServer(function(req, res) {

var url = req.url;

//客户端输入的url,例如如果输入localhost:8888/index.html

//那么这里的url == /index.html 

var file = documentRoot + url;

console.log(url);

fs.readFile(file, function(err, data) {

/*

   一参为文件路径

   二参为回调函数

       回调函数的一参为读取错误返回的信息,返回空就没有错误

       二参为读取成功返回的文本内容

*/

if (err) {

console.log(err);

res.writeHeader(404, {

'content-type': 'text/html;charset="utf-8"'

});

res.write('<h1>404错误</h1><p>你要找的页面不存在</p>');

res.end();

} else {

res.writeHeader(200, {

'content-type': 'text/html;charset="utf-8"'

});

res.write(data); //将index.html显示在客户端

res.end();

}

});

}).listen(duankou);

 

getIPAdress();

console.log("静态资源服务器已启动");

 

//获取服务器ip

function getIPAdress() {

var interfaces = require('os').networkInterfaces();

for (var devName in interfaces) {

var iface = interfaces[devName];

for (var i = 0; i < iface.length; i++) {

var alias = iface[i];

if (alias.family === 'IPv4' && alias.address !== '127.0.0.1' && !alias.internal) {

console.log("本地访问-http://127.0.0.1:" + duankou);

console.log("局域网访问-http://" + alias.address + ":" + duankou);

return alias.address;

}

}

}

}

原文地址:http://www.35ui.cn/post/20171022984.html

标签node服务器

上一条: 禁止input下拉框|禁止自动完成下拉框显示
下一条: 前端优化:js优化if else

或许你还对下面的文章感兴趣