day21
1-nodejs 中有哪些常用的内置模块
1、path模块 :
用于处理文件路径
2、until模块 :
弥补js功能不足,新增API。
3、fs模块:
文件操作系统的API
4、events模块
events 模块只提供了一个对象: events.EventEmitter。
【EventEmitter 的核心就是事件触发与事件监听器功能的封装。】
EventEmitter 的每个事件由一个事件名和若干个参 数组成,事件名是一个字符串,通常表达一定的语义。对于每个事件,EventEmitter 支持 若干个事件监听器。当事件触发时,注册到这个事件的事件监听器被依次调用,事件参数作 为回调函数参数传递。
5、http模块
get
post
6、jade模块
jade是一款高性能、简洁易懂的模板引擎。可通过jade来编写html文件。
jade类似一个用于快速编写html的语言,其编写后的文件后缀为.jade。
7、Express框架
Express是一个nodejs的web开源框架,用于快速的搭建web项目。其主要集成了web的http服务器的创建、静态文本管理、服务器URL地址请求处理、get和post请求处理分发、session处理等功能。
2-常用的第三方模块
request模块
作用:可用于发起http或者https请求,可以理解为服务端的Ajax请求。可以进行简单的服务器代理,用法 和ajax类似。
安装:npm install request --save
cheerio模块
一个专门为服务器设计包含jQuery核心库的第三方模块
cheerio.load(html)
用于在html代码以便进一步的精确选取,它不会执行html代码中的css和css和js
WebSocket模块
安装:npm install ws
开启websocket服务器
3-如何创建一个服务器
// 加载模块 const http = require('http') // url模块 const url = require('url') // 创建服务器 var app = http.createServer() // 监听请求 app.on('request',(req,res)=>{ // res.write('oook') // res.end('你好') res.writeHead(200,{ 'content-type':'text/html;charset=utf8' }) }) // 监听端口 app.listen(3000,()=>{ console.log('服务器运行在3000端口...') })
4-http 搭建的服务相应给客户端的数据如果是中文,应该如何处理
res.writeHead(200,{ 'content-type':'text/html;charset=utf8' })
5-第三方 router 模块和 serve-static 如何使用,作用是什么?
1.router
其功能是实现路由
使用方法:
获取路由对象
调用路由对象创建路由
启动路由
const getRouter = require('router') const router = getRouter(); router.get('/index', (req, res) => { res.end('Hello World!') }) server.on('request', (req, res) => { router(req, res, () => {}) })
2.sever-static
其主要功能是实现静态资源的访问
使用方法:
引入serve-static模块获取创建静态资源服务功能的方法
调用方法创建静态资源服务并指定静态资源服务目录
启用静态资源服务功能
const serveStatic = require('serve-static') const serve = serveStatic('public'); // public为静态文件目录地址 server.on('request', () => { serve(req, res) })

浙公网安备 33010602011771号