2023-6-1(第二十二天)

65 阅读1分钟

Node.js官方模块:

http模块

http/https:请求 - 响应模型,必须要有一个请求(前端),才有一个响应(后端)

var http=require("http");
var url=require("url");
var fs=require("fs");
//搭建服务器
var app=http.createServer();
//为其绑定端口号
app.listen(80);
//绑定请求事件
app.on("request",(req,res)=>{//只要有请求,就会触发事件
    var objUrl=url.parse(req.url,true);
    var router=objUrl.pathname;
    if(router=="/"||router=="/index.html"){
        fs.readFile(__dirname+"/public/html/index.html",(err,buf)=>{
            res.end(buf)
        })
    }else if(router.match(/html/)!=null){
        fs.readFile(__dirname+`/public/html${router}`,(err,buf)=>{
            res.end(buf)
        })
    }else if(router.match(/css|js|jpg|png|gif|woff|woff2|ttf2/)!=null){
        fs.readFile(__dirname+`/public${router}`,(err,buf)=>{
            res.end(buf)
        })
    }
})
req(request) 请求对象

req.url:获取到前端传到后端的路由和请求消息,但是路由和请求消息是融为一体,引入url,用url.parse进行解析!分开两部分

【注】所有的src、href、action、location、open都是一个请求,都会生成一个路由。

res(response)响应对象

res.end("响应的内容"/buf) - 响应到前端

扩展:str.match("字符串"/RegExp)
var rs=str.match(reg);

自定义模块的引入

文件模块:

require("./模块路径");

目录模块

  1. m1中的index.js

    require("./m1")
    
  2. m1中的xxx.js

    // 新建一个package.json配置文件,写入如下代码
    {"main":"xxx.js"}
    ​
    // 引入模块
    require("./m1")
    
  3. node_modules中的m2中的index.js

    require("m2")
    

下载第三方模块

npm(Node Package Manager)工具

Node.js的模块/包/软件管理器,专门用于管理第三方模块的。

作用:下载、更新、删除、维护包之间的依赖关系

检查npm是否安装成功:npm -v 如果能看到版本号,说明安装成功 1、下载:npm i 包名 2、删除:npm un 包名 3、更新:npm up 包名