URL的组成格式
最近在学习js的Ajax方面的内容,发现自己对基础的计算机网络知识认识不足,所以大概了解了下。
URL组成格式

图中中括号是可选项
- protocol 协议,常用的协议是http
- hostname 主机地址,可以是域名,也可以是IP地址
- port 端口 http协议默认端口是:80端口,如果不写默认就是:80端口
- path 路径 网络资源在服务器中的指定路径
- parameter 参数 如果要向服务器传入参数,在这部分输入
- query 查询字符串 如果需要从服务器那里查询内容,在这里编辑
- fragment 片段 网页中可能会分为不同的片段,如果想访问网页后直接到达指定位置,可以在这部分设置
关于域名的一些认识
首先,我们要知道万维网不是网际网络,万维网只是运行在网际网络上的一个应用。它的功能就是能够实现网络资源之间的互访。最初的方式是通过IP地址来访问的,但是IP地址是计算机或计算机组的数字标识,对人类来讲不方便记忆,所以后来实现了一种字符标识的方法,也就是我们所说的域名。实现这种域名和IP地址映射的东西叫域名系统,它是一个分布式数据库,具体的查询方法可见下面的例子(引用自维基百科):
以查询zh.wikipedia.org为例:
- 客户端发送查询报文"query zh.wikipedia.org"至DNS服务器,DNS服务器首先检查自身缓存,如果存在记录则直接返回结果。
- 如果记录老化或不存在,则
- DNS服务器向根域名服务器发送查询报文"query zh.wikipedia.org",根域名服务器返回.org域的权威域名服务器地址,这一级首先会返回的是顶级域名的权威域名服务器。
- DNS服务器向.org域的权威域名服务器发送查询报文"query zh.wikipedia.org",得到.wikipedia.org域的权威域名服务器地址。
- DNS服务器向.wikipedia.org域的权威域名服务器发送查询报文"query zh.wikipedia.org",得到主机zh的A记录,存入自身缓存并返回给客户端。
URL和URI的区别
URI是统一资源标识符,而URL是统一资源定位符,我们把URL理解为是URI的一个方法,而另一种方法是URN。

最后上一张我整理的mindmap
这里要说一下,有两个名词的缩写都是DNS,域名系统(domain name system)和域名服务器(domain name server),下图也有说明。

参考资料:
https://www.wikiwand.com/zh/域名
https://www.wikiwand.com/zh/域名系统
https://www.wikiwand.com/zh/统一资源标志符
http://www.cnblogs.com/01picker/p/4434197.html
分类:
JavaScript
标签:
javascript
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· 面试官:你是如何进行SQL调优的?