path 模块
path模块可以正确的拼接出和当前系统一样反斜杠的地址
引入
const path = require('path')
join方法
连接路径,会解析成当前系统支持的路径
path.join('public','uploads','avatar')
// public\uploads\avatar
fs.readFile(path.join(__dirname,'01.hello.js'),'utf8',(err,doc)=>{})
resolve()方法
获取当前文件的绝对路径,会和传入的路径进行解析,会将/解析为根目录
path.resolve('public','uploads','avatar')
url 模块
request参数
http模块中的createServer()函数的参数是一个回调函数.回调函数中有两个参数,分别是request和response.
url属性
request参数最重要的就是req.url属性,表示用户请求的URL地址.
URL方法:
url.parse() //解析URL
url.format(urlObj) //url.parse() 的反向操作
url.resolve(from,to)//添加或修改路由地址
parse方法:
const http =require('http');
const url =require('url');
http.createServer(function(request,response){
let bdUrl='https://www.baidu.com/';
console.log(url.parse(bdUrl));
res.end();
}).listen(8001);
Url对象属性:
Protocol //协议,这里是https协议
Slashes //斜线。表示是否以协议(地址)开头
Auth //Auth认证协议(url中身份验证信息部分)
Host //主机
Port //端口(接口)
Hostname //域名
Hash //哈希
Search //搜索字符串(search是window.location下的一个属性)
Query //查询对象(字符串)
Pathname //路径名
Path //路径
Href //完整url字符串
'format方法:'
let myUrl={
// Url对象属性:
}
console.log(url.format(myUrl));//https://www.baidu.com/'
'resolve方法:'
console.log(url.resolve('https://www.baidu.com/'));
console.log(url.resolve('https://www.baidu.com/','news'));
'获取data数据:'
let query=url.parse(req.url,true).query;