common.js中自定义模块的实现:
在模块里面通过exports或者module.exports暴露属性或者方法
在需要的模块使用require引入模块
一、模块暴露
//变量接收创建的服务器
let ser=http.createServer(......);
1.exports暴露
exports.ser=ser;
2.module.exports暴露
module.exports=ser;
二、按需引入模块
- 按路径引入
require方法请求 方法参数为需要引入模块的路径
let server= require("./server");
按路径引入,回调函数作为参数
//暴露模块
module.exports=(callback)=>{
http.createServer((require,response)=>{
callback(require,response);
}).listen(8000,"localhost",()=>{
console.log("http://localhost:8000");
});
}
//引入模块
let server=require("creatServer");
server((require,response)=>{
response.writeHead(200,{"Content-Type":"text/html;charset=utf-8;"});
response.write("我是服务端");
response.end(()=>{
console.log("响应成功");
})
})
- 按模块引入
引入的时候可以在require()中直接写入文件名称,不用写文件路径
因为nodejs require()在加载时 会自动在node_modules文件夹下去寻找相应的文件
请求node_modules文件夹下的某个文件
1.在node_modules文件夹下建立创建服务器的js文件(如下图)
2.在server.js中直接加载creatServer模块 不用使用路径加载
let server=require("creatServer");
请求node_mudules下某个文件夹下的文件
server.js文件需要引入node_mudules中data文件夹下的datainfo.js文件,则需通过
cnpm init –yes 命令安装当前文件的package.json文件,如图:
data文件夹中生成package.json文件
请求
注:***require()参数为请求文件所在**文件夹**的名称***
let getdata=require("data");
三、第三方包
安装与配置
1.生成node 项目的配置文件 命令 cnpm init --yes 生成 package.json
2.安装 cnpm install 第三方包 生成依赖包
3.请求加载 require("第三方包")
4.使用
- 第三方包- - -md5
md5包 单向加密包
//1.安装 cnpm install md5 生成 md5依赖包
//2.请求加载 md5
let md5 = require("md5");
//3.使用 md5(msg);
let id="10086";
console.log(md5(id)); //6412121cbb2dc2cb9e460cfee7046be2
2.第三方包- - -Base64
Base64 加密解密包
//安装 cnpm install --save js-base64
let base64 = require("js-base64").Base64;
let name="加密";
//加密 encode() encodeURI()
let add=base64.encode(name);
console.log(base64.encode(name)); //5Yqg5a+G
let addURI=base64.encodeURI(name);
console.log(base64.encodeURI(name)); //5Yqg5a-G
//解密 decode()
console.log(base64.decode(add)); //加密
console.log(base64.decode(addURI)); //加密