nodejs 中有哪些常用的内置模块
1、nodejs 中有哪些常用的内置模块
path模块
nodejs中的path模块用于处理文件和目录的路径
url模块
在nodejs中url模块是用来解析url地址的
fs模块
文件操作系统的API
http模块
创建服务器的
2、常用的第三方模块
1、nodemon :命令行工具,用以辅助项目开发,可以实时js文件是否改动,如果有改动,自动重新编译运行 (npm install nodemon)
2、nrm : 下载地址切换工具
使用步骤:npm install nrm -g
nrm ls
nrm use 下载地址名称
3.Gulp : 基于node开发的前端构建工具
使用步骤:npm install gulp
在项目根目录下建立gulpfile.js文件
重构项目的文件夹结构,src目录存放源代码文件,dist目录放置构建后文件
在gulpfile.js文件中编写任务
gulp中提供的一些方法:gulp.src()获取任务要处理的文件 ,gulp.dest()输出文件 ,gulp.task()建立gulp任务,gulp.watch()监控文件的变化
安装gulp命令行工具:npm install gulp-cli -g
gulp的一些常用插件:gulp-htmlmin(html文件压缩),gulp-file-include(公共文件包含),gulp-csso(压缩css),gulp-less(less语法转换),gulp-babel(JavaScript语法转换),gulp-uglify(压缩混淆JavaScript)
3、如何创建一个服务器
1 // 加载模块
2 const http = require('http') ;
3 // 加载url模块
4 const url = require('url') ;
5
6 // 创建服务器
7 const app = http.createServer() ;
8
9 // 监听请求
10 app.on('request',(req,res)=>{
11 res.writeHead(200,{'content-type':'text/html;charset=utf8'})
12 // res.setHeader('Content-Type','text/plain;charset=utf8') ;
13 // res.end("你好nodejs")
14
15 // 区分get和post请求
16 // if(req.method =='POST'){
17 // res.end('post') ;
18 // }else if(req.method == 'GET'){
19 // res.end('get') ;
20 // }
21
22 // 根据不同的请求返回不同的响应
23 // req.url
24 // console.log(req.url) ;
25
26 /* console.log(req.url) ;
27 // url.parse(要解析的url地址,是否将查询到的参数解析为对象形式)
28 console.log(url.parse(req.url,true)) ;
29 let params = url.parse(req.url,true).query
30 console.log(params.name) */
31
32 // 解构赋值
33 let {query,pathname} = url.parse(req.url,true) ;
34 if(pathname ==='/index' || pathname ==='/'){
35 res.end("你好欢迎进入首页") ;
36 }else if(pathname ==='/category'){
37 // res.end('你好'+query.name+'欢迎加入')
38 res.end(`你好${query.name},${query.age}欢迎加入`)
39
40 }
41 })
42
43 // 监听端口
44 app.listen(3000,()=>{
45 console.log("3000端口监听中...") ;
46 })
4、http 搭建的服务相应给客户端的数据如果是中文,应该如何处理
//响应报文
5、第三方 router 模块和 serve-static 如何使用,作用是什么?
router
作用:实现路由功能
1 const getRouter = require('router')
2 const router = getRouter();
3 router.get('/index', (req, res) => {
4 res.end('Hello World!')
5 })
6 server.on('request', (req, res) => {
7 router(req, res, () => {})
8 })
sever-static
作用:其主要功能是实现静态资源的访问
引入serve-static模块获取创建静态资源服务功能的方法
调用方法创建静态资源服务并指定静态资源服务目录
启用静态资源服务功能
使用代码如下:
1 const serveStatic = require('serve-static')
2 const serve = serveStatic('public'); // public为静态文件目录地址
3 server.on('request', () => {
4 serve(req, res)
5 })

浙公网安备 33010602011771号