url网址解析的好帮手

接下来进入node的重点,也就是介绍nodejs主要api的功能和如果使用,由于nodejs逐渐能满足这种高并发和大规模的场景。
他才被更多的公司所采用

无论什么资源,一定要有明确的地址才有意义,在互联网里面的具体地址就由url来表示,互联网上的一个图片,一个地址,一首
音乐,都会有一个唯一都一个地址,我们一般通过url来访问到它

说到url,就要提一下uri,经常有人搞不清楚两者的区别,uri是统一资源标识符,url是统一资源定位符,什么意思呢
uri偏重的是标识,url偏重的是定位,比如网址就是url,是一个具体的符号,说明了要通过哪种协议来访问这个资源
uri更抽象一些,是一个字符串格式规范,是一种概念上的定义,事实上呢,url是uri的一个子集,url肯定是uri,但
uri不一定是url,在我们生活中,分分钟都在url,比如去淘宝网,去百度,去优酷,他们的网址肯定是烂熟于心
那url也有一些他的命名规则,一般来说,url只能用英文字母,符号,和阿拉伯数字和某些标点符号,不能使用其他文字和符号
那如果有文字就必须编码,url的编码就是另外一个可以展开的话题了,我们还是直接回到nodejs里面,看看url这个模块
都能干啥

首先,要找到url这个模块的文档,进入官网后,找到url,可以找到很多相应的方法

我们先看这三个方法

他们分别是用来干嘛的呢
parse顾名思义,就是用来解析一个url地址的,url.parse()方法会解析一个url字符串并返回一个url对象
format呢就是将一个url对象转化成一个url字符串
resolve也是用来解析的,只不过它接收两个参数,把两个参数拼接成浏览器可以识别的格式

接下来来命令行里面演示一下,首先是parse
比如这个地址:https://nodejs.org/dist/latest-v10.x/docs/api/url.html
输入

node

进入nodejs的环境,直接打印

url

就能看到一些里面的一些可用的方法,我们输入

铛铛,就能看到url地址被解析成了对象,我们看下标准的url的组成部分,首先是这个
protbcal,它指定的是底层使用的协议是http还是ftp。
auth,URL的用户名与密码部分。该字符串跟在protocol和双斜杠(如果有)的后面,排在 host 部分的前面且被一个 ASCII 的 at 符号(@)分隔
slashes,是否有协议的双斜线
host,表示ip地址 或者 域名
port,端口,默认是80端口,如果是其他端口,就必须指明
hostname,主机名
hash,通常对应的是所谓的锚,页面上某个锚点的那种,加#之后,把页面滚动到当前位置到这种
search,查询字符串参数
query,发送给http服务到一个数据,通常称这个被=分隔到键值称为参数串
pathname,访问资源路径名
path,访问资源路径
href,没被解析的完整的超链接
无论多么复杂的url,只要是合法的,都可以这样被解析

猜你喜欢

转载自www.cnblogs.com/wzndkj/p/9075061.html
今日推荐