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的前后端分离的思考与实践(二)模版探索
Sep 26 NodeJs
nodejs中简单实现Javascript Promise机制的实例
Dec 06 NodeJs
nodejs事件的监听与触发的理解分析
Feb 12 NodeJs
nodejs爬虫抓取数据之编码问题
Jul 03 NodeJs
基于nodejs+express(4.x+)实现文件上传功能
Nov 23 NodeJs
nodejs读写json文件的简单方法(必看)
Mar 09 NodeJs
详解nodejs中express搭建权限管理系统
Sep 15 NodeJs
在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解
Sep 19 NodeJs
typescript nodejs 依赖注入实现方法代码详解
Jul 21 NodeJs
Nodejs监控事件循环异常示例详解
Sep 22 NodeJs
使用nodejs实现JSON文件自动转Excel的工具(推荐)
Jun 24 NodeJs
浅谈使用nodejs搭建web服务器的过程
Jul 20 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遍历类中包含的所有元素的方法
2015/05/12 PHP
javascript里的条件判断
2007/02/27 Javascript
javascript学习之闭包分析
2010/12/02 Javascript
IE6,IE7,IE8下使用Javascript记录光标选中范围(已补全)
2011/08/28 Javascript
能说明你的Javascript技术很烂的五个原因分析
2011/10/28 Javascript
jQuery中ajax和post处理json的不同示例对比
2014/11/02 Javascript
javascript实现当前页导航激活的方法
2015/02/27 Javascript
很全面的JavaScript常用功能汇总集合
2016/01/22 Javascript
JS加密插件CryptoJS实现的Base64加密示例
2020/08/16 Javascript
Javascript实现一朵从含苞到绽放的玫瑰
2019/03/30 Javascript
20多个小事例带你重温ES10新特性(小结)
2019/09/29 Javascript
JS如何实现动态添加的元素绑定事件
2019/11/12 Javascript
TypeScript的安装、使用、自动编译的实现
2020/04/10 Javascript
js实现飞机大战游戏
2020/08/26 Javascript
Python实现读取目录所有文件的文件名并保存到txt文件代码
2014/11/22 Python
通过Python使用saltstack生成服务器资产清单
2016/03/01 Python
python实现简单神经网络算法
2018/03/10 Python
对python 各种删除文件失败的处理方式分享
2018/04/24 Python
Python退火算法在高次方程的应用
2018/07/26 Python
Python使用pandas和xlsxwriter读写xlsx文件的方法示例
2019/04/09 Python
python ffmpeg任意提取视频帧的方法
2020/02/21 Python
使用Filters滤镜弥补CSS3的跨浏览器问题以及兼容低版本IE
2013/01/23 HTML / CSS
CSS3 实现穿梭星空动画
2020/11/13 HTML / CSS
美国厨房和园艺工具网上商店:Nestneed
2019/08/24 全球购物
规划编制实施方案
2014/03/15 职场文书
公司晚会主持词
2014/03/22 职场文书
公司联欢晚会主持词
2014/03/22 职场文书
部门活动策划方案
2014/08/16 职场文书
2014年最新大专生职业生涯规划书范文
2014/09/13 职场文书
授权委托书范本(单位)
2014/09/28 职场文书
学习党的群众路线教育实践活动心得体会范文
2014/11/03 职场文书
2015年爱国卫生工作总结
2015/04/22 职场文书
低端且暴利的线上线下创业项目分享
2019/09/03 职场文书
浅谈node.js中间件有哪些类型
2021/04/29 Javascript
React列表栏及购物车组件使用详解
2021/06/28 Javascript
“鬼灭之刃”热度不减,其成功背后的原因是什么?
2022/03/22 日漫