当前位置: 首页 > news >正文

node.js内置模块fs,path,http使用方法

NodeJs中分为两部分

一是V8引擎为了解析和执行JS代码。

二是内置API,让JS能调用这些API完成一些后端操作。
内置API模块(fs、path、http等)
第三方API模块(express、mysql等)

fs模块

fs.readFile()方法,用于读取指定文件中的内容。
fs.writeFile()方法,用于向执行的文件中写入内容

// fs 文件读写模块
fs.readFile(path[, options], callback)// path:必选,字符串,表示文件路径。
// options:可选,表示以什么编码格式来读取文件。
// callback:必选,文件读取完成后,通过回调函数拿到读取的结果。
fs.readFile('./file.txt', 'utf8', function(err, sucess){// 打印失败的结果// 读取失败时err会返回错误对象,sucess会返回undefinedconsole.log(err)console.log("-------------------------")// 打印成功的结果console.log(sucess)
})
const fs = require("fs")
// 2.调用fs.writeFile()方法,写入文件内容
// 	参数1:读取文件的存放路径
// 	参数2:data:表示要写入的内容。
// 	参数3:表示以什么格式写入文件内容,默认值是utf8。
// 	参数4:文件写入完成后的回调函数。
fs.writeFile('./file.txt', "Holle", 'utf8', function(err){// 打印失败的结果console.log(err)
})

path路径处理模块

path.join()方法,用来将多个路径片段拼接成一个完整的路径字符串

path.basename()方法,用来从路径字符串中,将文件名解析出来

 // 合成路径的时候,'…/'会抵消掉一层路径const path = require('path')const path = path.join('/a', '/b/c', '../', './d', 'e')
console.log(path)
// \a\b\d\e
const path2 = path.join(__dirname, './files/123.txt')
console.log(path2)
// __dirname:表示当前js文件所处的目录
// path.basename(),从一个文件路径中,获取到文件的名称部分:const path = require('path')const path = '/a/b/c/index.html'
var fullName = path.basename(path)
console.log(fullName)
// index.htmlvar n = path.basename(path, ".html" )
console.log(n)
// index
// 使用path.extname()方法,可以获取路径中的扩展名部分const path = require('path')const fpath = '/a/b/c/index.html'
const fext = path.extname(fpath)
console.log(fext)
// .html

http

通过 http模块提供的 http.createServer()方法,把一台普通的电脑,变成一台Web服务器,从而对外提供Web资源服务。

/ 导入http模块
const http = require('http')
// 创建web 服务器实例
const server = http.createServer()
// 为服务器实例绑定request事件,监听客户端的请求
server.on( 'request', (req,res) => {
// req 客户端请求信息
// res 服务器响应信息// 解决中文乱码问题
//发送的内容包含中文const str =`您请求的url地址是${req.url},请求的 method类型是${req.method}`// 为了防止中文显示乱码的问题,需要设置响应头Content-Type 的值为 text/html; charset=utf-8res.setHeader( 'Content-Type',  'text/html; charset=utf-8')// 把包含中文的内容,响应给客户端res.end(str)// 只要有客户端来请求我们自己的服务器,就会触发request 事件,从而调用这个事件处理函数console.log( 'Someone visit our web server.' )
})// 启动服务器
server.listen(8080, () =>{console.log('http server running at http://127.0.0.1:8080')
})只要有人访问http://127.0.0.1:8080,那么终端就会打印Someone visit our web server.但是由于没有写任何返回值,页面会等着客户端返回数据。
http://www.lryc.cn/news/126617.html

相关文章:

  • 【git clone error:no matching key exchange method found】
  • 谈谈网络协议的定义、组成和重要性
  • ssh免密登陆报错ERROR: @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
  • 【kubernetes】Pod控制器
  • aspose.ocr 的图片识别
  • 安卓纯代码布局开发游戏二:Android Studio开发环境搭建
  • HuggingFace开源的自然语言处理AI工具平台
  • ant-design-vue在ios使用AUpload组件唤起了相机,HTML的 `capture` 属性
  • 力扣75——图深度优先搜索
  • 小程序前台Boot后台校园卡资金管理系统java web学校进销存食堂挂失jsp源代码
  • 数学建模-多元线性回归笔记
  • 云安全攻防(十二)之 手动搭建 K8S 环境搭建
  • Python学习笔记_基础篇(八)_正则表达式
  • 【洛谷 P5736】【深基7.例2】质数筛 题解(判断质数)
  • C语言好题解析(一)
  • uniapp微信小程序区分正式版,开发版,体验版
  • 更多openEuler镜像加入AWS Marketplace!
  • 【BASH】回顾与知识点梳理(二十四)
  • CSRF
  • pyscenic分析:视频教程
  • 可视化绘图技巧100篇进阶篇(九)-三维百分比堆积条形图(3D Stacked Percentage Bar Chart)
  • js实现将文本转PDF格式并下载到本地
  • Servlet+JDBC实战开发书店项目讲解第四篇:登录实现
  • HarmonyOS NEXT新能力,一站式高效开发HarmonyOS应用
  • 【Java从0到1学习】09 正则表达式
  • log4j:WARN No appenders could be found for logger问题
  • 【Java】批量生成条形码-itextpdf
  • SpringBoot登录、退出、获取用户信息的session处理
  • 【软件测试】随笔系统测试报告
  • vue中使用html2canvas+jsPDF实现pdf的导出