Node.js——path路径,http,npm与包,模块化

简介: Node.js知识点一、fs(文件系统)二、path(路径)三、http(服务器)四、npm与包五、模块化一、fs(文件系统)(1) 读取指定文件内容fs.readFile(path[,option],callback参数1:字符串,表示文件的路径参数2,表示以什么编码格式读取文件参数3:读取完成后,通过会点函数读取结果(2) 向指定的文件中写入内容fs.writeFile(file,data[,options],callback)参数1:指文件路径的字符串,表示文件的存放路径参数2:表示要写入的内容参数3:表示写入内容的格式,默认值是utf8

一、fs(文件系统)

(1) 读取指定文件内容

fs.readFile(path[,option],callback
  • 参数1:字符串,表示文件的路径
  • 参数2,表示以什么编码格式读取文件
  • 参数3:读取完成后,通过会点函数读取结果

(2) 向指定的文件中写入内容

fs.writeFile(file,data[,options],callback)
  • 参数1:指文件路径的字符串,表示文件的存放路径
  • 参数2:表示要写入的内容
  • 参数3:表示写入内容的格式,默认值是utf8

<hr/>

二、path(路径)

(1)path.join()

用来将多个路径片段拼接成一个完整的路径的字符串

(2)path.basename()

可以从一个文件路径中获取文件的名称

(3)path.extname()

可以获取文件的扩展名

const fpath='a/b/c/index.html' //文件的路径

const fext=path.extname(fpath)
console.log(fext)  //输出.html
注意:若出现路径拼接问题,可以直接提供一个完整的文件存放路径

<hr/>

三、http(服务器)

(1) 创建基本的web服务器

  • 启动服务器
  • req请求对象
  • res响应对象

(2)根据不同的url响应不同的html内容

在这里插入图片描述

const server = http.createServer()         // 创建web服务器
// 监听服务器的request事件
server.on('request', (req, res) => {
    const url = req.url             // 获取客户端的地址
    // 把请求的地址映射为具体文件的存放路径和
    // const fpath = path.join(__dirname, url)
    let fpath=''
    if(url === '/') {  fpath=path.join(__dirname,'')
    } else {  fpath=path.join(__dirname,'',url)
    }
    // 读取文件 显示为客户端
    fs.readFile(fpath, 'utf8', (err, dataStr) => {
         if(err) return res.end('404 Not Found.')   // 失败 
        res.end(dateStr)
    })
})
server.listen(80, () => {
    console.log('server ruuning at http://127.0.0.1');
})           // 启动服务器
解决中文乱码问题

res.setHeader('Content-Type','文件路径',charset='utf-8')

四、npm与包

安装包的命令为 npm i moment
卸载包的命令 npm uninstall moment

(1)包的使用

  • 包必须以单独的目录存在
  • 包的顶级目录下必须包含package.json这个包配置文件
  • package.json中必须包含name(包的名字),version(版本号),main(包的入口)

(2)开发包

需要实现的功能

  • 格式化日期
  • 转义HTML中的特殊字符
  • 将HTML中的符号转为字符
  • 还原HTML中的特殊字符

在这里插入图片描述

(3)把包发布到npm上

将终端切换到包的根目录下 命令为:cd 包名为根目录

运行npm publish命令

<hr/>

五、模块化

模块在第一次加载后就被缓存

(1)内置模块(加载优先级最高)

如果导入时省略了文件的扩展名,则会自动补全

(2)第三方模块的加载机制

如果传递给require()的模块标识符不是内置模块,也没有‘./ ’或 '../ '开头,则nodejs会从当前模块的父目录开始从/node_modules文件夹中加载第三方模块

(3)目录作为模块
在这里插入图片描述

<hr/>

目录
相关文章
|
1月前
|
JSON 网络协议 安全
《吐血整理》保姆级系列教程-玩转Fiddler抓包教程(1)-HTTP和HTTPS基础知识
【7月更文挑战第16天】本文介绍了HTTP和HTTPS协议的基本概念与作用,强调了理解HTTP协议对使用抓包工具Fiddler的重要性。HTTP是用于Web浏览器与服务器间信息传输的协议,不加密,易被截取,不适合传输敏感信息。HTTPS是HTTP的安全版,通过SSL/TLS提供加密和服务器身份验证,确保数据安全。HTTP请求包括请求行、请求头、空行和可选的请求主体,响应则有响应行、响应头、空行和响应主体。HTTP协议无状态,而HTTPS解决了安全性问题,但也带来了额外的计算开销。Fiddler作为一个强大的抓包工具,可以帮助开发者和测试人员分析HTTP/HTTPS通信,理解请求和响应的结构。
33 4
《吐血整理》保姆级系列教程-玩转Fiddler抓包教程(1)-HTTP和HTTPS基础知识
|
1月前
|
JavaScript 前端开发
node.js 导入导出模块(CommonJS模块化规范,ES6模块化规范)
node.js 导入导出模块(CommonJS模块化规范,ES6模块化规范)
23 1
|
2月前
|
JavaScript
【干货】js判断url是否是合法http/https
【干货】js判断url是否是合法http/https
158 1
|
2月前
|
Web App开发 存储 网络安全
Charles抓包神器的使用,完美解决抓取HTTPS请求unknown问题
本文介绍了在 Mac 上使用的 HTTP 和 HTTPS 抓包工具 Charles 的配置方法。首先,强调了安装证书对于抓取 HTTPS 请求的重要性,涉及 PC 和手机端。在 PC 端,需通过 Charles 软件安装证书,然后在钥匙串访问中设置为始终信任。对于 iOS 设备,需设置 HTTP 代理,通过电脑上的 IP 和端口访问特定网址下载并安装证书,同时在设置中信任该证书。配置 Charles 包括设置代理端口和启用 SSL 代理。完成这些步骤后,即可开始抓包。文章还提及 Android 7.0 以上版本可能存在不信任用户添加 CA 证书的问题,但未提供解决办法。
470 0
Charles抓包神器的使用,完美解决抓取HTTPS请求unknown问题
|
3月前
|
JavaScript 前端开发
基于 Node.js 环境,使用内置 http 模块,创建 Web 服务程序
基于 Node.js 环境,使用内置 http 模块,创建 Web 服务程序
|
3月前
|
JavaScript
细讲Node.js模块化,以及 CommonJS 标准语法导出和导入,详细简单易懂!
细讲Node.js模块化,以及 CommonJS 标准语法导出和导入,详细简单易懂!
|
3月前
|
JavaScript 前端开发
node.js中path模块-路径处理,语法讲解
node.js中path模块-路径处理,语法讲解
|
2月前
|
监控 小程序 前端开发
基础入门-抓包技术&HTTPS协议&WEB&封包监听&网卡模式&APP&小程序
基础入门-抓包技术&HTTPS协议&WEB&封包监听&网卡模式&APP&小程序
|
2月前
|
JSON JavaScript 中间件
【Node.js】从基础到精通(三)—— HTTP 模块探索
【Node.js】从基础到精通(三)—— HTTP 模块探索
24 0
|
3月前
|
缓存 前端开发 JavaScript
React和Next.js开发常见的HTTP请求方法
React和Next.js开发常见的HTTP请求方法
45 0

热门文章

最新文章

推荐镜像

更多