需求:想在本地浏览器输入location:8888/index.html访问index.html文件
我们可以使用Apache,Nginx,IIS等等...
本文使用node开启服务
我们开启一个8888端口来访问'C:/Users/admin/Desktop/node'目录下的文件.
1.新建server.js写上以下内容.
2.运行node server.js
3.在'C:/Users/admin/Desktop/node'目录下新建index.html文件写上任意内容...
4.浏览器输入 location:8888/index.html查看
5.点赞...
const PORT = 8888;
//访问端口号8888//端口号最好为6000以上
const dir = 'C:/Users/admin/Desktop/node';
//端口访问的根目录,根据自己需求更改
var http = require('http');
//引入http模块
var fs = require('fs');
//引入fs模块
var url = require('url');
//引入url模块
var path = require('path');
//引入path模块// req : 从浏览器带来的请求信息
// res : 从服务器返回给浏览器的信息
var server = http.createServer(function(req,res){
var pathname = url.parse(req.url).pathname;
;
//客户端输入的url,例如如果输入localhost:8888/index.html,那么这里的url == /index.html
//url.parse()方法将一个URL字符串转换成对象并返回,通过pathname来访问此url的地址。var realPath = path.join(dir,pathname);
//完整的url路径
console.log(realPath);
// F:/nodejs/nodetest/index.htmlfs.readFile(realPath,function(err,data){
/*
realPath为文件路径
第二个参数为回调函数
回调函数的一参为读取错误返回的信息,返回空就没有错误
二参为读取成功返回的文本内容
*/
if(err){
//未找到文件
res.writeHead(404,{
'content-type':'text/plain;
charset="utf-8'
});
res.write('404');
res.end();
}else{
//成功读取文件
res.writeHead(200,{
'content-type':'text/html;
charset="utf-8'
});
res.write(data);
res.end();
}
})
});
server.listen(PORT);
//监听端口
console.log('服务成功开启')
【node创建服务访问指定目录】
推荐阅读
- 携程实习篇|Node.js之process进程
- node中package.json和package-lock.json文件的作用
- sequlize统一格式化时间
- egg 如何接收xml数据
- Node.js在WebStorm中调试
- node npm 设置全局仓库路径
- node require 导入模块解析 加载规则和加载机制
- node|node.js学习笔记-模块module
- window node配置安装的全局模块所在的路径cache的路径
- node|node.js express性能优化