当前位置: 首页 > news >正文

搞什么啊? URI 和 URL 到现在还不清楚?

前言

我一直贯彻一种思想,如果是记一个玩意,是歪果传过来的概念,一定要溯根。


这一篇文章,会让看官们一次性就记住 URL 和 URI 的概念、区别。


ps:我希望的是大家以后接触一个洋概念,或者记一个洋概念,也可以参照我的这种方法。

 ps:但是,作为科普侠,我忍不了。

正文


URL 英文全称  Uniform Resource Locator


URI 英文全称 Uniform Resource Identifier


Resource : 资源 

不管从简称缩写还是全称来看,都可以看到区别 就是 最后的 I  和 L

说说URL

Locator : 定位器 

定位器,什么概念,现在的定位,就是能找到位置,而且是准到不行那种意思。


所以不管URI 是什么, 首先 URL 就是指 能准确100%能找到具体资源那种。


就像我的CSDN博地址 https://blog.csdn.net/qq_35387940  这就是一个URL ,能够准确地找到,还能顺手点赞关注。


现在记住了 URL 是 非常准确能够 确保 访问/找到/调用 资源的 链接地址, 才能叫 URL


再拿图片链接来做个举例 ,加深一下概念的记忆:

这是一张图片地址的访问链接 URL :
https://img-blog.csdnimg.cn/16bc2bf36b9c479a8d765b64e4f27dc8.png


如果我说,让你把这个图片URL发我一下,你发个

16bc2bf36b9c479a8d765b64e4f27dc8.png  ,

能叫URL吗??

接下来说说URI 

Identifier : 标识符

标识符,什么概念, 就是说 能知道 什么东西是个啥? 


比如,告诉你们,我住在哪啊?

我说, 我住在一个小单间里面。  

这样回答OK吗?


 OK的, 我住的那个地方是个 小单间, 也算是我住的地方的一个标识符了。 

 我再说细一点,我住在深圳宝安那边的一个小单间里面。

这样回答OK吗?
 OK的, 我住的那个地方是个 小单间,在深圳宝安那边, 也算是我住的地方的一个标识符了。 
 
 
 
到此为止, 你能找得到我么?

找不到的。 这么多小单间,去哪找?


没错,这种标识符,就是跟URI 一样,它是指一种资源的标识, 但是没保证到能准确 访问/找到/调用  这个资源。

那如果我的标识符详细一点呢?

我住在 中国/广东省/深圳市/宝安区/20区/新安街道/JC花园/888栋/100楼/A房/A103小单间 。

这样的标识符,细致,你已经可以找到我了,可以准确 访问/找到/调用  到 的 一个标识符。

这也是一个标识符,只是足够细致了的标识符。

也就是说这样的URI 也是存在的, 足够细致的URI 。


可能看到这,会有疑问, 你这不就是URL么, 都能够准确 访问/找到/调用  了。

还嘴硬说URI ???


是的,你的理解没错,我说的也没错,为啥?

因为  URI 包含 URL。


URI 可以大,可以小, 但是URL必须是 URI 概念里面的东西。

看图:


URL 可以理解是一种 URI (资源标识),是一种能够准确到爆炸的标识,所以直接叫 定位了。

URI是 URL 吗 ?  只能说包含关系,如果URI足够准确到爆炸, 可以当做URL去看待使用。 

本质上:

 URL能 确保 定位到资源。
 URI 不确保, 只是告诉你个大概,标识符。
         


 ps:当然平时对接工作中,你说 我的用户新增接口是 /userAdd ,是个URI,但是对面的兄弟也知道你说啥,而且也能准确调用到接口。
为啥? 因为是人,他懂你。 他知道你说啥。 他和你心灵相通啊。
 而不是你给了他一个URL, 也不是你的URI足够细致, 只因为他懂你罢了。
             
             
    

 

还有一个 URN 的概念 Uniform Resource Name ,我不说,因为完全没必要去管。

我们只记住URI 和URL就行,学东西我有洁癖。
         
    

相关文章:

  • Springboot 根据数据库表自动生成实体类和Mapper,只需三步
  • SpringBoot 导出多个Excel文件,压缩成.zip格式下载
  • Springboot 指定自定义模板导出Excel文件
  • Mysql 我随手造200W条数据,给你们讲讲分页优化。
  • 【云原生】风云暗涌的时代,DBA们的利刃出鞘了
  • 以后面试官问你 为啥不建议使用Select *,请你大声回答他!
  • Springboot 导入导出Excel ,一对多关系,复合表格、合并单元格数据
  • 怎么清晰地理解、表达 IaaS 、 PaaS 、 SaaS ?
  • UML类图的六大关系,最佳学习理解方式
  • Springboot 整合 Socket 实战案例 ,实现 单点发送、广播群发,1对1,1对多
  • Springboot Mybatis 、JPA 调用存储过程,实战教程
  • 写代码的七八九十宗罪,多图、胆小慎入!
  • Springboot byte[] 转 MultipartFile ,InputStream 转 MultipartFile
  • Springboot 最细节全面的接口传参接参介绍,总有你喜欢的一种方式
  • Springboot 整合RabbitMq ,用心看完这一篇就够了
  • 【知识碎片】第三方登录弹窗效果
  • conda常用的命令
  • Django 博客开发教程 8 - 博客文章详情页
  • EOS是什么
  • Java 23种设计模式 之单例模式 7种实现方式
  • Javascript 原型链
  • JavaScript学习总结——原型
  • Js基础知识(一) - 变量
  • Rancher如何对接Ceph-RBD块存储
  • 回顾 Swift 多平台移植进度 #2
  • 基于Dubbo+ZooKeeper的分布式服务的实现
  • 跨域
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 力扣(LeetCode)21
  • 聊一聊前端的监控
  • 前端相关框架总和
  • 前端自动化解决方案
  • 使用common-codec进行md5加密
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 物联网链路协议
  • 写代码的正确姿势
  • #!/usr/bin/python与#!/usr/bin/env python的区别
  • (C语言)逆序输出字符串
  • (Redis使用系列) SpringBoot中Redis的RedisConfig 二
  • (二)pulsar安装在独立的docker中,python测试
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (十三)Java springcloud B2B2C o2o多用户商城 springcloud架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)...
  • (五)关系数据库标准语言SQL
  • (转)memcache、redis缓存
  • (转)Oracle存储过程编写经验和优化措施
  • .net core控制台应用程序初识
  • .net framework 4.0中如何 输出 form 的name属性。
  • .NET Framework Client Profile - a Subset of the .NET Framework Redistribution
  • .NET Framework杂记
  • .NET Windows:删除文件夹后立即判断,有可能依然存在
  • .NET 设计模式—适配器模式(Adapter Pattern)
  • .net对接阿里云CSB服务
  • .net反编译工具
  • .net开源工作流引擎ccflow表单数据返回值Pop分组模式和表格模式对比
  • .sdf和.msp文件读取