Nodejs读取文件时相对路径的正确写法(使用fs模块)


Posted in NodeJs onApril 27, 2017

在开发Nodejs中,我们往往最常用的模块就是fs核心模块(fs.readFile)来读取文件。代码如下:

Nodejs读取文件时相对路径的正确写法(使用fs模块)

但是运行之后,并没有按照想象中一样,读取test.html文件内容,这是一个bug,坑爹的玩意,解决办法:

其实由于运行环境的不同,以上的相对路径的写法导致最后读取的位置是不同的。

正确的写法应该是使用"path.join()"的方式实现:(__dirname表示当前文件的目录名)

//require 表示引包,引包就是引用自己的一个特殊功能
var http = require("http");
var path = require("path");
var fs = require("fs");
//创建服务器,参数是一个回调函数,表示如果有事件进来,要做什么
var server = http.createServer(function (req,res) {
  fs.readFile(path.join(__dirname, "./test.html"),function (err,data) {
    res.writeHead(200,{"Content-type":"text/html;charset=UTF-8"});
    res.end(data);
  });
});

//运行服务器 监听2000端口 端口可以任意修改
server.listen(2000,"127.0.0.1");

运行效果如下:

Nodejs读取文件时相对路径的正确写法(使用fs模块)

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

NodeJs 相关文章推荐
Nodejs Post请求报socket hang up错误的解决办法
Sep 25 NodeJs
NodeJS Web应用监听sock文件实例
Feb 18 NodeJs
nodeJS代码实现计算交社保是否合适
Mar 09 NodeJs
Nodejs获取网络数据并生成Excel表格
Mar 31 NodeJs
nodejs如何获取时间戳与时间差
Aug 03 NodeJs
Express与NodeJs创建服务器的两种方法
Feb 06 NodeJs
详解NodeJS框架express的路径映射(路由)功能及控制
Mar 24 NodeJs
nodejs制作爬虫实现批量下载图片
May 19 NodeJs
NodeJS 实现手机短信验证模块阿里大于功能
Jun 19 NodeJs
详解redis在nodejs中的应用
May 02 NodeJs
NodeJS搭建HTTP服务器的实现步骤
Oct 12 NodeJs
nodejs中的异步编程知识点详解
Jan 17 NodeJs
详解nodejs express下使用redis管理session
Apr 24 #NodeJs
nodejs入门教程六:express模块用法示例
Apr 24 #NodeJs
Nodejs进阶:express+session实现简易登录身份认证
Apr 24 #NodeJs
nodejs入门教程五:连接数据库的方法分析
Apr 24 #NodeJs
nodejs入门教程四:URL相关模块用法分析
Apr 24 #NodeJs
nodejs入门教程三:调用内部和外部方法示例
Apr 24 #NodeJs
nodejs入门教程二:创建一个简单应用示例
Apr 24 #NodeJs
You might like
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
2013/08/10 PHP
php获取数组长度的方法(有实例)
2013/10/27 PHP
php强大的时间转换函数strtotime
2016/02/18 PHP
php下载文件,添加响应头的简单实例
2016/09/22 PHP
javascript实现随机显示星星特效
2016/01/28 Javascript
浅谈jQuery中hide和fadeOut的区别 show和fadeIn的区别
2016/08/18 Javascript
AngularJS ng-style中使用filter
2016/09/21 Javascript
微信小程序 animation API详解及实例代码
2016/10/08 Javascript
浅谈vue项目优化之页面的按需加载(vue+webpack)
2017/12/11 Javascript
ajax前台后台跨域请求处理方式
2018/02/08 Javascript
vue-cli构建项目下使用微信分享功能
2018/05/28 Javascript
微信小程序第三方框架对比 之 wepy / mpvue / taro
2019/04/10 Javascript
基于JavaScript获取base64图片大小
2019/10/18 Javascript
在Chrome DevTools中调试JavaScript的实现
2020/04/07 Javascript
微信小程序中target和currentTarget的区别小结
2020/11/06 Javascript
[39:07]LGD vs VP 2018国际邀请赛淘汰赛BO3 第二场 8.21
2018/08/22 DOTA
Mac下Anaconda的安装和使用教程
2018/11/29 Python
详解Python中is和==的区别
2019/03/21 Python
python批量下载抖音视频
2019/06/17 Python
利用python实现周期财务统计可视化
2019/08/25 Python
python基于plotly实现画饼状图代码实例
2019/12/16 Python
基于Tensorflow批量数据的输入实现方式
2020/02/05 Python
wxPython修改文本框颜色过程解析
2020/02/14 Python
python实现一次性封装多条sql语句(begin end)
2020/06/06 Python
python--shutil移动文件到另一个路径的操作
2020/07/13 Python
Python collections.deque双边队列原理详解
2020/10/05 Python
Pytorch 图像变换函数集合小结
2021/02/01 Python
教师自我剖析材料
2014/09/29 职场文书
公积金接收函格式
2015/01/30 职场文书
五一劳动节慰问信
2015/02/14 职场文书
公司联欢会主持词
2015/07/04 职场文书
2016新教师岗前培训心得体会
2016/01/08 职场文书
2016师德师风学习心得体会
2016/01/12 职场文书
Python 发送SMTP邮件的简单教程
2021/06/24 Python
解析目标检测之IoU
2021/06/26 Python
深入讲解Vue中父子组件通信与事件触发
2022/03/22 Vue.js