restful的一点思考

编世界 编世界     2022-09-18     720

关键词:

1、首先我觉得这就是一个规范,就像是定义变量用驼峰法这样的规范一样,我不用驼峰法定义变量一样可以实现啊,这个我觉得没什么好纠结。都是程序猿,就不要自相伤害了,让世界和谐一点好不好。
2、使用RESTful定义的api,首先功能划分的很清楚啊,get/post/put/delete对应的就是RCUD(查增更删),这样每个api功能就可以比较单一,耦合度就低啊。
3、还有就是RESTful设计的api是不是很优雅,有木有。

 

还有之前一直没有搞清楚post和put的区别,区别在于是否是幂等。我觉得只是这个规范衍生出来的一个特性吧,用这个特性,可以更好的去区分get/post/put/delete。假如一个接口实现的代码即会做添加操作,同时还会做更新操作,那应该根据这个接口的功能来确定用post还是put,比如题主add_blog接口,很明显就是添加一篇博客,fetch只是辅助功能,那这个接口应该用post。

 

本文所要探讨的正是HTTP协议涉及到的一种重要性质:幂等性(Idempotence)。在HTTP/1.1规范中幂等性的定义是:

Methods can also have the property of "idempotence" in that (aside from error or expiration issues) the side-effects of N > 0 identical requests is the same as for a single request.

从定义上看,HTTP方法的幂等性是指一次和多次请求某一个资源应该具有同样的副作用。幂等性属于语义范畴,正如编译器只能帮助检查语法错误一样,HTTP规范也没有办法通过消息格式等语法手段来定义它,这可能是它不太受到重视的原因之一。但实际上,幂等性是分布式系统设计中十分重要的概念,而HTTP的分布式本质也决定了它在HTTP中具有重要地位。

关于重构工作的一点思考

...重构方案,到具体执行的过程中遇到的问题,以及对重构的一点理性思考。起因:  本系统是2015年11月开始建设,当时为了快速投入使用,大量的烂代码,后期一直保持快速前进,没有进行过实质性的重构。具体表现:●分层... 查看详情

关于异常的一点思考

一、异常的(检测)触发:编译器插入检查指令(对语言规定的检查项);二、异常的基本处理机制:类似中断,生成异常场景信息,然后执行转发操作。三、异常处理的上下文:由线程货其他结构保存的类似函数调用栈的上下文... 查看详情

这段时间的一点思考

  这段时间是从参加集训培训营到现在。我变化很大,因为我的生活似乎陷入了一重循环:收到打击-思考-获得感悟-收到新打击-又思考---同时我变得很虚荣,很贪,美好的东西我都想得到,十分的肤浅并且喜欢幻想又细腻敏... 查看详情

汉诺塔问题的一点思考(代码片段)

  汉诺塔问题是递归中常见的一类问题,刚开始接触这类问题毫无头绪,但是看了很多资料之后也慢慢发现了其中的一点规律  关于汉诺塔的一点传说:汉诺塔问题是源于印度一个古老的传说大梵天创造世界的时候做了三根... 查看详情

关于ugc的一点思考

   ugc会使互联网繁荣,但依赖大众用户创造的内容质量上会存在参差不齐,这是ugc本身存在的问题。   就拿技术论坛或社区来说,好的内容不少,但质量不好的内容也很多。社区在引导用户发言的同时,也... 查看详情

关于函数执行过程的一点思考

  刚刚有一个同学问我下面的代码出现了什么问题?大家可以一起看看,这是初学者非常容易犯的错误。<!DOCTYPEhtml><htmllang="en"><head> <metacharset="UTF-8"> <title>Document</title></head><body> <formac 查看详情

对于函数名本质的一点思考

自己在学习函数指针的时候对函数名的意义产生了一点疑惑,经过一些尝试和思考,感觉应该可以像下面这样理解,如果有啥不对的希望大家指正。首先我们对变量名的定义做一下回顾:在C语言里面,我们声明一个变量的时候... 查看详情

关于共享单车的一点思考

...后再决定是否加入    共享单车是共享经济的一个代表,从政治角度来看,符合节约环保的倡导;从经济角度看,经济高速发展必然需要资源的整合和利用,共享模式将成为未来的趋势;从社会角度开,城市拥堵、... 查看详情

关于多线程编程的一点思考

多线程编程主要是为了解决处理慢的问题。使用多个线程进行并发处理资源,使用的模型最多的还是生产者消费者模型。------------------------------------------------------目前我遇到的问题或者体会主要有两个:1.生产者产生速度不能大... 查看详情

关于app测试的一点思考

1 系统入口部分要细化测试用例颗粒度 充分准备好测试数据  真实覆盖线上场景 比如注册验证码的获取 国内国外手机 一般国外手机发送短信打电话都要加上区号  2新版本发布  有新功能... 查看详情

关于js中函数的返回值的一点死思考

在Javascript中,函数总是会有一个返回值。即使我们没有显示的使用“return”,程序也会隐式的返回一个“undefined”。通过下面的小demo即可理解。demo1functionfn(){return1;}fn();运行结果:1 demo2functionfn(){console.log(1);}fn(); 运行结... 查看详情

工作中上的一点思考

防御式编程,不要相信任何人和服务。你要做好对自身的保护,号称4个9的AWS不也宕机了吗!你所担心的事一定会发生,而且可能马上会发生。最近上了一些功能,你说好像这个地方可能会有问题,你最好赶紧看,也许马上就会... 查看详情

关于交大二手市场的一点思考

关于交大二手市场项目的一些思考主要问题:是否应该叫做交大二手市场,这个名字如果给你推荐,你会不会选择使用这个app或登录这个网站呢?第一部分:产品应该是什么样的1.主要针对人群:大一大二新生为买方、大三大四... 查看详情

spring依赖注入引发的一点思考

java中bean分为普通的javabean和spring的bean两种。1)通过spring的配置文件或者注解,在进程启动时由spring对其初始化、并最终最终放到spring容器中,这就是spring的bean,否则就是java bean。2)如果是spring的bean,那么在代码中直接getbea... 查看详情

关于图像是如何运动的一点思考

...笔者没有学过正规的图像处理,只是自己在徒手撸控件时的一些思考,难免会有疏漏,敬请谅解。  最开始,我做一个图像变换的时候,方法是对一个个点进行单独的计算,以确定其变换的方法以及代码,毫无疑问,这是... 查看详情

对于表列数据类型选择的一点思考

原文链接:http://www.cnblogs.com/CareySon/archive/2012/06/14/ChoiceOfDataTypeWhenDesignTable.html简介   SQLServer每个表中各列的数据类型的选择通常显得很简单,但是对于具体数据类型的选择的不同对性能的影响还是略有差别。本篇文章... 查看详情

中台服务架构的一点思考

 中台服务架构的思想是伴随着企业规模不断扩大、业务多元化而形成的。如阿里巴巴将集团20多个核心业务中公共的、通用的业务以服务的方式沉淀到了共享业务事业部,这套共享服务体系为阿里巴巴集团的核心业务赋能,... 查看详情

关于task的一点思考和建议

前言本打算继续写SQLServer系列,接下来应该是死锁了,但是在.NETCore项目中到处都是异步,最近在写一个爬虫用到异步,之前不是很频繁用到异步,当用到时就有点缩手缩尾,怕留下坑,还是小心点才是,于是一发不可收拾,发... 查看详情