使用node.js创建简易服务器,让本地HTML页面可以通过localhost访问

本文介绍了如何使用Node.js的http和fs模块创建一个简易的本地服务器,使得HTML页面可以通过localhost访问。通过编写server.js文件,监听指定端口,并使用readFile()函数读取文件。此外,还讨论了如何配置服务器自动打开浏览器展示页面。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用node.js创建简易服务器,让本地HTML页面可以通过localhost访问

1、使用到的模块

  • http:是node.js内置的模块,可用于搭建服务端 var http=require(“http”)
  • fs:是node.js内置的模块,用于实现文件相关的,读取、写入啊之类的等等等等var fs=require(“fs”)

2、简易的代码实现

在本地的项目根目录下新建server.js。其内容如下:

var http=require("http");
var fs=require("fs");

//创建web服务器
var server = http.createServer();
    /*提供数据服务,注册request请求事件,当客户端请求,自动执行回调函数*/
    /*request 请求对象,获取客户端的一些请求信息*/
    /*response 响应对象,给客户端发送响应消息*/
server.on('request', function (request, response) {
    //response使用Write来向客户端发送数据,但是一定要用end来结束响应数据
    var pathname = request.url.slice(1); // request.url 返回的是/index.html
    // 读取文件内容
    fs.readFile(pathname, function (err, data) {
        if (err) {
            // 读取失败了
        } else {
            // 将读取到的内容返回
            response.setHeader('content-type', 'text/html;charset=utf-8'); //这个很重要,设置编码方式是utf-8
            response.write(data.toString());
        }
        response.end();
    });
});

//绑定端口号启动服务器
server.listen(6060, function () {
    console.log('服务器启动成功,可以通过"http://127.0.0.1:6060/"来进行访问');
});

3、使用

现在简易的服务器已经搭起来了,在命令行执行 node server.js,在浏览器中访问127.0.0.1:6060/test.html 即可显示test页面内容
在这里插入图片描述
4、手机上访问

直接listen(端口号,IP地址即可)

// 填上端口号和自己的IP地址就行了
server.listen(6060,  function () {
    console.log('服务器启动成功,可以通过"http://127.0.0.1:6060/"来进行访问');
});

5、readFile()

readFile(),读取文件。
参数分别是:

  • 文件的路径;
  • 文件读取格式(文本文件和二进制文件)这个参数不写时,默认读取为二进制文件;
  • 回调函数

6、自动打开浏览器

如何设置,在运行 node index.js 命令后会自动打开浏览器并访问首页?

需要再安装一个opn库,可以打开项网站、文件、可执行文件之类的功能

步骤:
1、npm install opn,若已有这个库,则忽略此步骤

var opn = require('opn');
server.listen(6060,  function () {
    console.log('服务器启动成功,可以通过"http://127.0.0.1:6060/"来进行访问');
    opn('http://127.0.0.1:6060/index.html');
});

2、在命令行执行node index.js 即可自动打开默认浏览器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值