解析URI是一个有意思的东西,之前没有意识到,原来这东西也可以这么复杂。
URI
在维基百科中对于URI的解释是这样子的:
复制代码 代码如下:
在计算机术语中,统一资源标识符(Uniform Resource Identifier,或URI)是一个用于标识某一互联网资源名称的字符串。 该种标识允许用户对网络中(一般指万维网)的资源通过特定的协议进行交互操作。URI由包括确定语法和相关协议的方案所定义。
引自网络上对于URI组成的解释,而这些可以在稍后对于URI的解析中看出来。
URI一般由三部分组成:
1.访问资源的命名机制。
2.存放资源的主机名。
3.资源自身的名称,由路径表示。
或者可以说是这样子,两者看上去是一致的。
URL的格式由下列三部分组成:
1.协议(或称为服务方式)
2.存有该资源的主机IP地址(有时也包括端口号)
3.主机资源的具体地址。,如目录和文件名等
URI解析
复制代码 代码如下:
“解析”一个URI意味着将一个相对URI引用转换为绝对形式,或者通过尝试获取一个可解引URI或一个URI引用所代表的资源来解引用这个URI。文档处理软件的“解析”部分通常同时提供这两种功能。
Javascript URI解析
简单地以博客中的搜索JS为例,下面就是其的URL,
https://www.jb51.net/search/"codetitle">复制代码 代码如下:
var parser = document.createElement('a');
parser.href = "https://www.jb51.net/search/"
我们便可以知道其的协议、端口号、主机、具体地址等
复制代码 代码如下:
parser.protocol;
parser.host;
parser.pathname;
parser.search;
返回的结果便是
复制代码 代码如下:
protocol:http
host:www.jb51.net
pathname:/search/
search:"codetitle">复制代码 代码如下:
mailto:h@jb51.net"codetitle">复制代码 代码如下:
var parser = document.createElement('a');
parser.href = "mailto:h@jb51.net";
> parser.protocol
"mailto:"
> parser.pathname
"h@jb51.net"
> parser.search
""
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?