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 相关文章推荐
golang、python、php、c++、c、java、Nodejs性能对比
Mar 12 NodeJs
nodejs中使用多线程编程的方法实例
Mar 24 NodeJs
nodejs和php实现图片访问实时处理
Jan 05 NodeJs
使用nodejs下载风景壁纸
Feb 05 NodeJs
nodejs使用express创建一个简单web应用
Mar 31 NodeJs
详解如何在NodeJS项目中优雅的使用ES6
Apr 22 NodeJs
nodeJS实现简单网页爬虫功能的实例(分享)
Jun 08 NodeJs
Nodejs回调加超时限制两种实现方法
Jun 09 NodeJs
NodeJS使用七牛云存储上传文件的方法
Jul 24 NodeJs
Nodejs模块载入运行原理
Feb 23 NodeJs
nodejs express配置自签名https服务器的方法
May 22 NodeJs
nodejs实现UDP组播示例方法
Nov 04 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递归函数返回值使用方法
2013/02/18 PHP
javascript 基础篇4 window对象,DOM
2012/03/14 Javascript
jquery 提交值不为空的元素示例代码
2013/05/10 Javascript
使用JS或jQuery模拟鼠标点击a标签事件代码
2014/03/10 Javascript
js操作输入框中选择内容兼容IE及其他主流浏览器
2014/04/22 Javascript
Javascript判断图片尺寸大小实例分析
2014/06/16 Javascript
对之前写的jquery分页做下升级
2014/06/19 Javascript
JavaScript使用setInterval()函数实现简单轮询操作的方法
2015/02/02 Javascript
JavaScript中setFullYear()方法的使用详解
2015/06/11 Javascript
JS实现手写parseInt的方法示例
2017/09/24 Javascript
前端必备插件之纯原生JS的瀑布流插件Macy.js
2017/11/22 Javascript
JS代码检查工具ESLint介绍与使用方法
2020/02/04 Javascript
原生js实现分页效果
2020/09/23 Javascript
[01:05:30]VP vs TNC 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python使用scrapy采集数据过程中放回下载过大页面的方法
2015/04/08 Python
Python实现学生成绩管理系统
2020/04/05 Python
numpy使用技巧之数组过滤实例代码
2018/02/03 Python
Python基于pycrypto实现的AES加密和解密算法示例
2018/04/10 Python
python 对dataframe下面的值进行大规模赋值方法
2018/06/09 Python
python实现自动发送邮件
2018/06/20 Python
django框架单表操作之增删改实例分析
2019/12/16 Python
基于python3的socket聊天编程
2020/02/17 Python
关于win10在tensorflow的安装及在pycharm中运行步骤详解
2020/03/16 Python
Python读写Excel表格的方法
2021/03/02 Python
详解CSS3中的box-sizing(content-box与border-box)
2019/04/19 HTML / CSS
LEGO玩具英国官方商店:LEGO Shop GB
2018/03/27 全球购物
加拿大专业美发产品购物网站:Chatters
2021/02/28 全球购物
项目经理的岗位职责
2013/11/23 职场文书
应聘面试自我评价
2014/01/24 职场文书
创业者是否需要商业计划书?
2014/02/07 职场文书
2014年车间主任工作总结
2014/12/10 职场文书
干部个人考察材料
2014/12/24 职场文书
家长评语怎么写
2014/12/30 职场文书
优质护理服务心得体会
2016/01/22 职场文书
2019年冬至:天冷暖人心的问候祝福语大全
2019/12/20 职场文书
Java org.w3c.dom.Document 类方法引用报错
2021/08/07 Java/Android