REST风格(RESTful)的风趣理解

背景:
 

小A准备给他外地的女朋友寄一封爱情的信件,于是去学校的商店买了一个信封,外加一些非常漂亮的信纸

回到宿舍,他诗兴大发,洋洋洒洒一封几千字的情书就写好了,该填信封了,这时,他对信封有点不满意

为什么这样说呢?他发现他买的信封竟然需要自己DIY,需要自己写填自己想填的内容,可能这类信封的设计初衷,是为了显示寄信人的创意,可是这很操蛋不是吗,这样的信封邮局会收吗?

于是他找到了卖信封的小姐姐

小A:美女,我买的信封怎么这么奇葩呀?上面居然需要自己设计,这样的东西一点不规范呢

商店姐姐:这不符合当代年轻人的个性吗?不是为了显示你寄信的用心和独特吗

小A:可是,假如我在上面写一些无关紧要的内容,邮局的人会不会杀了我

商店姐姐:傻瓜,我的意思是你可以在上面画或者一些有趣的东西,基本信息肯定还是要按照邮局的标准来,我这里有个模板,你自己看看

小A接过来,恍然大悟,原来是这样,标准还是标准,要是不按照标准来,邮局的人每天光看信封都得累死

扫描二维码关注公众号,回复: 3966323 查看本文章

回到宿舍躺着,思考刚才的一幕。小A毕竟是学计算机的,突然明白过来,要是我们上网的请求乱七八糟,解析判断请求就得哭死(就和邮局的人看乱七八糟的信封是一个道理),甚至很可能压根就解析不了请求,因此采需要一套标准。因此,我们请求的信息需要全部展现给服务器(邮局)。然后邮差们在配送的过程中实际上是可以不用在意所配送的信件的状态的,这就可以类比为REST的无状态。当然我们是可以向快递那样加上快递的物流状态,但是在通信的过程中,实际上是没有必要的,这样会消耗更多的计算力。故设计成无状态不仅仅安全(邮差不会拆开我们的信件)还省事(不用浪费多的计算)。

提到了无状态,当然REST还有其他几个特性,比如,需要提供统一的接口,我们寄信肯定找邮局,收信也是。邮局我们可以理解成一个controller。

个人的理解是REST最为重要的特性就是无状态。

虽然用寄信件类比这个过程有点牵强,因为一般我们web是需要响应的,这里的响应我们可以理解成对方回信,这个不像HTML,是请求一定一定有响应,寄信就不一定了。

PS:REST是大佬的博士论文,有时间可拜读一下:

有几分可以支持一下我的CSDN账号:https://download.csdn.net/download/zhou_438/10757303

也可以免费的百度网盘:https://pan.baidu.com/s/1nO7KCnRABXAHUmnbr63LPA 提取码:cb3z 

猜你喜欢

转载自blog.csdn.net/zhou_438/article/details/83617315