【Http原理】URI=URL+URN ?

最近把 图解HTTP 撸了两遍,为了深入了解一直接触的 http 到底是怎么工作的,是个什么东西

毕竟这是一个痛点啊,虽然说学过 计算机网络(计算机网络补考过了.....),现在感觉毛都不懂啊

面试官:请你讲一下 http? (〃'▽'〃)

讲什么鬼讲,我懂个毛线,心真的痛.......但是我是不会认输的,特别是在大佬 uncle 的教导之下,开始了我万事讲原理的探索之路,ヾ(◍°∇°◍)ノ゙

于是我现在,把自己觉得一些模模糊糊的点给整理一下,说真的,有时候,碰到模糊点,真想跳过,连搜索按钮都不敢点,知识太多,装不进了,真的装不进了

最近碰到 URI、URL 这这个东西傻傻分不清楚,最终还是耐着性子去总结了下

定义

URI 是 统一资源标识符

在 某一规则下 能把一个资源 独一无二地标识 出来

URL 是 统一资源定位符

用 描述位置 来确定 一个资源

URN 是 统一资源名称

通过 名字 来标识资源

下面的图就可以说一目了然了( 图是盗用的 )

URI

URI 最大,包含 URN 和 URL

URI 可以是URL,可以是 URN,可以两个都是

URI 作用是标记一个资源,可以有不同标记的方式

1、通过 URN 的 特定命名空间名字 去标识

URN 定义 资源的身份

使用URN,可以在不知道他的网络位置和访问方式的情况下讨论资源

如果你关心的是网络资源的唯一性,你可以把 URI 定义成 URN 的形式

2、通过 URL 的 地址定位方式 去标识

URL 定义 查找该资源的方法

比如 身份证id 是 42222 的 人,可以有 n个 地址 找到他

如果你关心如何获取到资源,你可以把 URI 定义成 URL 的形式.

URL

从 资源存储位置 的角度去出发

唯一地标识了资源的路径 以及 通过什么协议 获取到资源信息

URN

从为每一个资源起一个 唯一名称 的角度出发

由于为每一个资源起一个唯一的名称显然需要专门的组织机构管理,所以并不是所有的资源都有 URN

例子

一个网络资源,比喻成张三这个人

通过 URN

我们可以用 身份证号 4215648 来独一无二确定 张三的身份

虽然没有告诉你怎么去 找到他,但是你有足够的信息去 检索到他

通过 URL

可以通过 xx 省 xx 市 xx 街道 xx 大厦 xx 楼 xx 号 张三 来定位到他

不论用 地址 还是 编号 的方式,我们都可以唯一确定一个人

都是 URI 的一种实现

结尾

继续 学习 HTTP,继续总结 HTTP

要做到面试的时候,敞开胸膛让他问个透

最后,大佬 uncle 重出职场,祝他工作顺利,前程似锦

原文发布于微信公众号 - 神仙朱(skying-zhu)

原文发表时间:2018-08-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券