使用node.js创建一个简易服务器,让本地的HTML页面可以通过localhost方式访问
程序员文章站
2022-07-15 16:04:48
...
最近一直在复习当中,所以会一写 HTML/js什么的。但是都是通过file:///Users/baiyinyu/Documents/privateProgram/test/918.html
的方式去查看执行结果的。 。。。。
看起来丑不说, 其他电脑上也不能访问这个。。。 也不能在手机*问这个页面。。。。。。。。。
就在想啊,本地的vue项目为什么可以通过localhost:port
的方法访问了, 怎么做才能实现这个效果呢?
这时候我们的node.js就派上用场了。。。。。
注:这篇文章只实现了最简单最基础的功能,
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");
http.createServer(function(request,response){
// 获取要读取的文件路径
var pathname=(request.url).slice(1); // request.url 返回的是/index.html
// 读取文件内容
fs.readFile(pathname,function(err,data){
if(err){ // 读取失败了
console.log(err);
}else{
// 将读取到的内容返回
response.writeHead("content-type":"text/html;charset=utf-8");//这个很重要,文件是HTML,编码方式是utf-8
response.write(data.toString());
}
response.end();
})
}).listen(9090);
3、使用
现在,简易的服务器已经搭起来了,在命令行 执行
node server.js``,在浏览器中访问
localhost:9090/index.html```即可
当前的目录结构如下:为了让方便截图,给server.js改了个名字。。。。。
浏览器访问localhost:9090/918.html
的结果如下
4、手机*问
好吧,目前为止现在还是访问不了。需要把localhost替换成本机IP才行 。。。。。。。。
先去翻个资料,找到后补充下。。