`
touchinsert
  • 浏览: 1333828 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

REST应该放弃使用http头GET、POST、PUT和DELETE来表达操作

 
阅读更多

为了统一和简单,REST应该放弃使用http头GET、POST、PUT和DELETE来表达操作

完全分离是不可能的,不如一开始就统一存放各类信息,以便后台统一获取信息(操作、对象、请求者、。。。。。)

所有类别的信息均放在query或post的data里,这样REST的软件依赖性更小。
因为
1、有些http客户端只支持get(query)或post;
2、以后的应用可能需要更多的信息类别(不是具体信息项),最终还是要混合放在get的query或post的data里的。

所以,不如一开始就建议 操作者身份(id或session)、操作动作、操作对象(以及以后可能出现的新的信息类别) 均放在post的data里。
不支持post的客户端,可以放在get的query里。
后端获取这些信息时,顺序从 query/data/cookies 里按名(name或tag)取信息(value),取到即返回。
这样,不支持cookie、data的客户端,也一样可以工作

这才是彻底符合简单、通用、统一的原则——这也是REST本来主张的,也是它的出发点


——其实没必要说这么多,还是论坛讨论的不方便
——例如我说到“action=xxx该放在query或data里”,对方就以为我对REST规定的操作放在http头里的http头理解不对。。。。。。。。。其实我一开始就知道REST规定的操作放在http头,所以才反感特意把操作放在一个特别的地方(只不过http协议正好有这个所谓的动作而已——随着后台应用的普及,基本都是只需要get/post的了,好像还有一些特别的动作,如dev/opt之类的,更是应该丢弃)

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics