Nodejs - 路径模块和http模块

时间:2025-01-20 22:51:50

文章目录

  • 一、什么是path路径模块
  • 二、path模块的使用
    • 1. 导入path模块
    • 2. 路径拼接
    • 3. 从路径中,将文件名解析出来
    • 4. 获取路径中的扩展名部分
  • 三、http模块
    • 1. 创建web服务器的步骤
    • 2. req请求对象
      • 2.1 req相关的属性
    • 3. res响应对象
      • 3.1 解决中文乱码的问题
    • 4. 根据不同的url响应不同的html内容
      • 4.1 核心实现步骤


一、什么是path路径模块

path模块是官服提供的,用来处理路径的模块。

二、path模块的使用

1. 导入path模块

const path = require('path')

2. 路径拼接

()方法,用来将多个路径片段拼接成一个完整的路径文件

语法 :([...paths])

const path = require("path")
const pathStr = path.join('/a','/b','/c')
console.log(pathStr); // \a\b\c

注意 :…/会抵消前一层路径

const path = require("path")
const pathStr = path.join('/a','/b/c','../','/d')
console.log(pathStr); // \a\b\d

3. 从路径中,将文件名解析出来

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

const path = require("path")
const fpath = path.basename('/a/b/c/')
console.log(fpath); // 

从解析出来的文件名中去除后缀名

const path = require("path")
const fpath = path.basename('/a/b/c/', '.txt')
console.log(fpath); // file

4. 获取路径中的扩展名部分

使用()方法,获取路径中的扩展名部分

const path = require("path")
const fpath = path.extname('/a/b/c/')
console.log(fpath); // .txt

三、http模块

http模块是提供的,用来创建web服务器的模块。

1. 创建web服务器的步骤

  1. 导入http模块
const http = require('http')
  1. 创建web服务器实例 : 调用()方法
const server = http.createServer()
  1. 为服务器实例绑定request事件
server.on('request', (req, res)=>{
  console.log(req, res);
})
  1. 启动服务器

调用服务器实例的 .listen() 方法,即可启动当前的web服务器

server.listen(80, ()=>{
  console.log("服务器已启动");
})

2. req请求对象

只要服务器接收到客户端的请求,就会调用通过()为服务器绑定的request事件处理函数
request里面包含客户端相关的数据或属性

2.1 req相关的属性

  • 是客户端请求的url地址
  • 是客户端的method请求类型

3. res响应对象

response 里面包含服务器相关的数据或属性
可以通过(str) 向客户端发送指定的内容,并结束这次请求的处理过程

server.on('request', (req, res)=>{
  // 只要有客户端来请求我们自己的服务器,就会触发request事件。
  res.end("通话结束")
})

3.1 解决中文乱码的问题

当调用**()**方法,向客户端发送中文内容的时候,会出现乱码问题,此时,需要手动设置内容的编码格式。

// 为服务器实例绑定request事件
server.on('request', (req, res)=>{
  // 为防止中文显示乱码的问题,需要设置响应头
  res.setHeader('Content-Type', 'text/html; charset=utf-8')
  // 只要有客户端来请求我们自己的服务器,就会触发request事件。
  res.end("end")
})

4. 根据不同的url响应不同的html内容

4.1 核心实现步骤

  1. 获取请求的url地址