URL地址解析
URI/URL/URN
- URL(Uniform Resource Locator 统一资源定位符)
理解: 统一资源定位符,简而言之就是通过这个地址可以找到对应的宝贝。
- URN (Uniform Resource Locator 统一资源名称)
理解: 一般指国际上通用的(标准的)一些名字,比如国际统一发版的编号。
- URI (Uniform Resource Identifier 统一资源标识符)
理解: 统一资源标识符,URL 和 URN 是 URI 的子集。一般泛指 URL。
一个完整的URL的组成部分和实际意义
http: //www.taobao.cn:80/foods/index.html?from=weixin&x=1#xiaomao
- 协议(http://)
整体模型中,我们在客户端基于HTTP将信息传给服务器,服务器想要把信息传递给客户端,也是基于HTTP传输回来的,那什么是传输协议呢?
我们可以将HTTP传输协议理解为快递小妹,通过该传输协议能够实现客户端和服务端的内容之间的相互传输,它起到了帮着传输的作用,是一个进行信息传输的小工具。
那么我们是不是可以选择不同类型的快递小妹呢?
常用的传输协议
- http 超文本传输协议
超文本传输协议:除了传输正常的文本以外,还可以传递媒体资源文件(或者流文件)及XML格式数据
- https 更加安全的http,一般涉及支付的网站(淘宝 京东 百度 github)都要采用https协议(s:ssl 加密传输)
- ftp 文件传输协议 一般应用于把本地资源上传到服务器
域名(www.taobao.cn)
- 顶级域名 qq.com
- 一级域名 www.qq.com
- 二级域名 sports.qq.com
- 三级域名 kbs.sports.qq.com
- .com 国际域名
- .cn 中文域名
- .com.cn
- .edu 教育网
- .gov 国家政府单位
- .io 博客
- .org 官方组织
- .net 系统类
域名:一个让用户方便记忆的名字(不通过域名,直接使用服务器的外网IP也能访问到服务器,但是外网IP不好记忆)
我们购买域名,只需要把顶级域名给买回来,剩下的n级域名都是基于顶级域名所分配的。
端口号(:80)
- 端口号的取值范围 0 ~ 65535,在这区间随便找个数字都可作为端口号
- 作用:使用端口号来区分同一台服务器的不同项目,当用户通过外网IP访问服务器时,就可以通过端口号来找到对应的项目。
如果项目采用的就是默认端口号,我们在书写地址的时候就不用加端口号,浏览器在发送请求的时候会帮我们默认给加上,但传给服务器是一定有端口号的,服务器按照端口号找到对应的项目。
- http默认端口号:80
- https默认端口号:443
- ftp默认端口号:21
请求资源路径名称(/foods/index.html)
- 默认的路径或者名称(xxx.com/stu/ 不指定资源名,服务器会找默认的资源,一般默认资源名是default.html,index.html...当然,我们这些名字可以自己在服务端配置)
注意伪URL地址的处理(URL重写技术是为了增加SEO搜索引擎优化的,动态的网址一般不能被搜索引擎收录,所以我们要把网址静态化,此时需要的是重写URL)
+ 例如: https://item.js.hk/2688449.html ===其真实网址可能是===> https://item.jd.hk/index.php?id=2688449 (这便是URL重写技术)
问号传参信息(?from=weixin&x=1)
客户端想要把信息传递给服务器,方式有很多种
+ URL地址问号传参 + 请求报文传输(请求头和请求主体)
- 也可实现不同页面之间的信息交互,例如:从列表到详情
- 问号传参最主要的作用就是通信,主要用于客户与服务器端,以及不同页面之间的信息传输都可以来做。
HASH值(#xiaomao)
- 也能够充当信息传输的方式,但不是最主要
- 锚点定位
- 基于HASH实现路由管控(不同的HASH值,展示不同的组件和模块)