nodejs中url模块怎么使用
发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,这篇文章主要介绍了nodejs中url模块怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇nodejs中url模块怎么使用文章都会有所收获,下面我们一起来看看吧。在
千家信息网最后更新 2025年11月08日nodejs中url模块怎么使用
这篇文章主要介绍了nodejs中url模块怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇nodejs中url模块怎么使用文章都会有所收获,下面我们一起来看看吧。
在nodejs中,URL模块是用于处理和解析URL的,该模块提供了三个方法,分别是:1、parse方法用于将url解析成对象;2、format方法用于将对象转换成url字符串;3、resolve方法用于拼接URL。
本文操作环境:Windows10系统、nodejs 12.19.0版、Dell G3电脑。
nodejs中url模块的用法
URL模块用于解析和处理URL字符串,提供了三个方法:
1、parse方法
将url解析成对象,parse方法原型:
url.parse(urlStr[, parseQueryString][, slashesDenoteHost])
可传递三个参数,第一个必须
urlStr:要解析成对象的url字符串
parseQueryString:是否解析查询参数,默认为false
slashesDenoteHost:是否以斜线解析主机名,默认为false
只给第一个参数:
var url = require('url');var testUrl1 = 'z.qingk.cn/information-info/tengzhou/e75bab8405254b04b2fab0a9f54e4838/dbvbotovboussowbwssvossdqaxqssxw/7519fbc4d85ea4c3589d8d751c507222/b011a8c5bbab4050953cb722bccb5095?param1=111¶m2=222'var urlParseUrl1 = url.parse(testUrl1)console.log(urlParseUrl1);结果:
第二个参数设为true
也就是说要同时把url中?之后的查询参数解析成对象
var url = require('url');var testUrl1 = 'z.qingk.cn/information-info/tengzhou/e75bab8405254b04b2fab0a9f54e4838/dbvbotovboussowbwssvossdqaxqssxw/7519fbc4d85ea4c3589d8d751c507222/b011a8c5bbab4050953cb722bccb5095?param1=111¶m2=222'var urlParseUrl1 = url.parse(testUrl1);console.log(urlParseUrl1);var urlParseUrl2 = url.parse(testUrl1,true);console.info(urlParseUrl2);结果:
第三个参数设置为true
也就是当不知道url协议时,以//为依据识别host
var testUrl2 = '//z.qingk.cn/information-info/tengzhou/e75bab8405254b04b2fab0a9f54e4838/dbvbotovboussowbwssvossdqaxqssxw/7519fbc4d85ea4c3589d8d751c507222/b011a8c5bbab4050953cb722bccb5095?param1=111¶m2=222';var urlParseUrl3 = url.parse(testUrl2,false,false);console.info(urlParseUrl3);var urlParseUrl4 = url.parse(testUrl2,false,true);console.info(urlParseUrl4);
结果:
2、format方法
format就是parse的返过程,把对象转换成url字符串
var testObj1 = { protocol: null, slashes: true, auth: null, host: 'z.qingk.cn', port: null, hostname: 'z.qingk.cn', hash: null, search: '?param1=111¶m2=222', query: 'param1=111¶m2=222', pathname: '/information-info/tengzhou/e75bab8405254b04b2fab0a9f54e4838/dbvbotovboussowbwssvossdqaxqssxw/7519fbc4d85ea4c3589d8d751c507222/b011a8c5bbab4050953cb722bccb5095', path: '/information-info/tengzhou/e75bab8405254b04b2fab0a9f54e4838/dbvbotovboussowbwssvossdqaxqssxw/7519fbc4d85ea4c3589d8d751c507222/b011a8c5bbab4050953cb722bccb5095?param1=111¶m2=222', href: '//z.qingk.cn/information-info/tengzhou/e75bab8405254b04b2fab0a9f54e4838/dbvbotovboussowbwssvossdqaxqssxw/7519fbc4d85ea4c3589d8d751c507222/b011a8c5bbab4050953cb722bccb5095?param1=111¶m2=222' };var rsUrl = url.format(testObj1);console.info(rsUrl)结果:
//z.qingk.cn/information-info/tengzhou/e75bab8405254b04b2fab0a9f54e4838/dbvbotovboussowbwssvossdqaxqssxw/7519fbc4d85ea4c3589d8d751c507222/b011a8c5bbab4050953cb722bccb5095?param1=111¶m2=222
parse中每一种形式的url所生成的结果,format都可以进行逆过程的转换。
3、resolve方法
返回从根目录指定到当前目录的绝对路径url。返回结果去除参数和锚点,返回结果标准url路径格式
var url=require('url'); //指定相对路径 var url1=url.resolve('http://qingk.cn/one/two/three','four'); console.log(url1); //http://qingk.cn/one/two/four //指定根目录的相对路径 var url3=url.resolve('http://qingk.cn/one/two/three','/four'); console.log(url3); //http://qingk.cn/four //带参数的相对路径 var url2=url.resolve('http://qingk.cn/one/two/three?name=zhangsan','four'); console.log(url2); //http://qingk.cn/one/two/four //非标准分隔符的原路径 var url4=url.resolve('http://qingk.cn\\one#name1','/four'); console.log(url4);//http://qingk.cn/four //非标准分隔符的相对路径 var url5=url.resolve('http://qingk.cn/one','\\two\\three'); console.log(url5);//http://qingk.cn/two/three关于"nodejs中url模块怎么使用"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"nodejs中url模块怎么使用"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。
方法
模块
参数
结果
路径
对象
三个
字符
字符串
标准
知识
也就是
内容
分隔符
根目录
篇文章
过程
处理
查询
主机
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网站设计开发与软件开发
中小学生家庭与网络安全有感
三维地质建模软件开发商合作
服务器数据库下载文件
自制网络服务器
网络安全与信息化专业
浪潮服务器维修系统
阿里云服务器管理
以下哪项是数据挖掘网络技术
ajax远程获取数据库
数据库查看配置文件的命令
奥飞数据库原理
大连市网络安全宣传周答案
备案域名要绑定服务器吗
wifi嗅探网络安全
网络安全检查 网信办
法治与网络安全手抄报三年级
常见的软件开发模型和特点
可视化技术软件开发
调数据库
sql数据库密码过期
北京极光互动网络技术中心
设计数据库的逻辑机构模式
ei软件开发
微信提示重新导入数据库失败
网络安全专业班级装饰
磷酸化水平数据库
数据库替换名字
电脑里可以装两个数据库吗
产品经理数据库