Node.js使前端程序员可以写后台管理程序的代码用来完成一些对后端的操作,类似于php,Java等语言,但其实本质上Node.js 就是运行在服务端的 JavaScript,它是一种运行环境,使前端程序员可以搭建自己的服务器完成一些后端操作。
一、原生模块
Node.js自带的模块,属于Node.js本身的一些方法属性。
1、http模块
//http模块也是实现搭建服务的基本步骤
//1.引入http模块
const http = require("http")
//2.创建http服务对象
//http.createServer(回调函数)
const app = http.createServer((req,res)=>{
console.log("前端访问我了...")
//后端需要设置响应头 后端设置的权重高
res.writeHead(200,{"Content-Type":"text/html;charset=utf-8"})
//res.write("你好!")
res.write(`<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
你好呀!大兄弟
</body>
</html>`)
res.end() //后端需要结束响应 必须要写的
})
//3.监听端口
app.listen(8000,"localhost",()=>{
console.log("server in running....")
})
2、fs模块
磁盘操作,文件操作
①、读取
fs.readFile('文件路径',[编码方式],(err,data)=>{})
[^err ]: err 错误 ,null没有错误
变量 = fs.readFileSync('文件路径')
处理错误
try{要排错的代码}catch(e){}
②、更名
fs.rename('改前','改后',err=>(){})
//异步
fs.renameSync('改前','改后');//同步
③、删除
fs.unlinkSync('文件路径')//用来删除文件
fs.rmdir('文件路径')//用来删除文件夹
3、url模块
①、作用
处理 url型的字符串
②、用法
url.parse(str,true) 返回 对象 true处理query为对象
str -> obj 返回 对象 true
protocol: ‘http:’, 协议
slashes: true, 双斜杠
auth: null, 作者
host: ‘localhost:8002’, 主机
port: ‘8002’, 端口
hostname: ‘localhost’, baidu
hash: ‘#title’, 哈希(锚)
search: ‘?username=sdfsdf&content=234234’, 查询字符串
query: ‘username=sdfsdf&content=234234’, 数据
pathname: ‘/aaa’, 文件路径
path: ‘/aaa?username=sdfsdf&content=234234’, 文件路径
href: ‘http://localhost:8002/aaa?username=sdfsdf&content=234234#title’
url.format(obj) ===> 可以将url对象转成url的字符串
obj -> str 返回str
4、querystring 模块
①作用
处理查询字符串 如:?key=value&key2=value2
②用法
querystring.parse(str) 返回对象
querystring.stringify(obj) 返回字符串
二、第三方模块
俗称包,依赖等,例如npm商店中下载的jQuery,用于方便我们操作的nodemon等脚本都属于第三方模块。
三、自定义模块
此类模块是自己命名定义的,尽量不与原生模块的命名发生冲突,自定义模块大多用于完成自己的项目需求。