nodejs 常见的内置模块
1)url模块
将请求字符串转换为对象
// let obj=url.parse(str);//将请求字符串转换为对象 // let obj=url.parse(str,true);//参数二为true ,将查询字符串转换为对象 // console.log(obj.protocol);//协议 // console.log(obj.hostname);//主机名 // console.log(obj.port);//端口号 // console.log(obj.pathname);//资源路径 // console.log(obj.query);//查询字符串 let {username,pwd}=url.parse(str,true).query; // console.log(obj); console.log(username,pwd);
2)querystring
将查询字符串---->对象
//查询字符串 // let str='uername=jack&pwd=123'; // let obj=qs.parse(str);
3)path
Join() 地址拼接
extname() 获取文件的后缀名
basename() 获取地址最后一个文件的名称
dirname() 上级目录地址
isAbsolute() 判断是否是绝对路径 true false
resolve() 将相对路径转换为绝对路径
静态资源:
路由配置后,客户端虽然可以访问不同的页面;但是页面里面的外部链接仍然无效,比如:link的外部css,script的src链接,image的src链接等都是无效的。
为什么这些资源是无效的?
我们一定不要认为,客户端请求了html或页面后,页面里面的外部链接就会自动请求得到;实际是,我们请求到html或页面后,浏览器在解析这个页面的过程中遇到外部链接,还会继续向服务器发请求,那么服务器就需要对这些请求进行处理(比如css,js,image等请求连接);这个处理的过程我们就可以认为是在处理静态资源。
静态资源的处理,其实和路由的配置非常相似,只不过静态资源都有指定的目录和特殊的后缀,简单处理如下:
let ext = path.extname(req.url); //获取请求路径的后缀 let basename = path.basename(req.url); //获取路径中文件的名称 switch (ext) { case ".css": buf = fs.readFileSync(`./public/css/${basename}`); break; case ".js": buf = fs.readFileSync(`./public/js/${basename}`); break; case ".jpg": case ".png": case ".gif": case ".bmp": buf = fs.readFileSync(`./public/image/${basename}`); break; }
网站开发模式
网站的开发方式,目前来看主要有两种
a)服务端渲染(SSR server-side rendering)
i.服务端渲染的内容不是静态页(.html),而是模板页(.php,.jsp,vue 使用模板语法进行页面渲染,把动态数据解析为静态的html)
ii.数据来源是服务端
b)前后端分离
i.前台负责写html静态页,使用ajax请求来渲染上面的数据
ii.后台负责提供接口
注意:如果是前端端分离,则src,href,action等链接,一定要写全地址,比如http://localhost:3000/css/index.css。
如果是服务端渲染,则src,href,actions等链接,需要写路由配置的配置项,比如:/about,/list等。
- 05nodeJS常见API_http模块的小爬虫,如何做小爬虫,如何爬取别的网页的内容
- 3-5 nodejs模块划分和npm常见指令
- Python中常见的内置模块
- 初入 node.js及常见内置模块
- Nodejs内置模块不需做路径解析,外部自定义模块必须做路径解析
- Python 常见的内置模块
- Python常见内置模块
- python常见内置模块
- python常见的内置模块
- 使用Nodejs内置的http模块搭建一个简易的服务器
- 论Python常见内置模块
- 论python 中常见内置模块
- Nodejs-内置核心模块&npm包管理工具
- Python常见内置模块
- Python内置模块-日志模块(logging)常见用法
- 深入出不来nodejs源码-内置模块引入初探
- Nodejs 对 内置模块fs简单使用技巧与操作方法,模块文件夹的curd与文件的curd
- NodeJS系列之二:NodeJS内置http模块初识
- nodejs内置模块
- NodeJs入门常见模块