1. 首先RESTful是一套规范,不是框架,它是来约束你的。也不关心生产效率的提高。就好像使用汇编开发应用,性能是快了,但是生产效率很低。RESTful它需要你在路由上定义很多规则来解释的URL,假如你有1000个接口,你是不是得写1000个正则表达式来解释URL,还得管理它不让它出错,成本是不是很高?业务代码都没有写,就折腾这些去了。

   2. 在开发的层面上,把这么多参数堆积在url上,看起来其实不直观。举个类比的例子。

   例子1 在linux命令行里,文件,目录过长的路径是不是看起来很头疼,看都不想看。 你就很想使用tree命令查看结构化的目录文件

例子2 在写代码的函数里,是不是入参个数超过6个,就开始觉得这个函数看起来很麻烦了?

    url上带有各种参数,请问如何调试?假如我要批量删除,如果100个用户,拼接的url是不是特别长?

以上的问题,都是可以通过程序员的聪明才智在RESTful规范下解决,但是值得你这样去做吗?

3. 个人感受,我觉得RESTful是web时代的产物,因为浏览器里面就只能输入url,他们希望通过url就能实现web的全部功能。但是现在这个时代,就算是网页web也是要很多响应式的交互,并不是论坛,网页那种简单的数据的陈列展示了。

4. RESTful 把各种资源都拆分这么细,让客户端自己分别请求,就好像客户端在操作数据库一样。RESTful api,特别是一些开放平台,面向不定的客户端,它无法知道它的使用者到底要如何使用它,所以它为了灵活性就相当于把数据库的操作能力转了一下给了客户端 。可是app最好不要请求这么多接口,最好一次请求返回整个页面的数据。‘


所以使用RESTful ,你考虑一下生产效率,维护成本,调试方便,有没有做成开发平台的必要性?

带上RESTful的金手铐,你累吗?的更多相关文章

  1. 利用DNSLOG获取看不到的信息(给盲注带上眼镜)

    一.前言 本文原创作者:sucppVK,本文属i春秋原创奖励计划,未经许可禁止转载! 毕业设计总算搞得差不多了,这个心累啊.这不,完成了学校的任务,赶紧回来给蛋总交作业.今天给大家分享一个姿势吧,不是 ...

  2. 【HDU 4940】Destroy Transportation system(无源无汇带上下界可行流)

    Description Tom is a commander, his task is destroying his enemy’s transportation system. Let’s repr ...

  3. 记得ajax中要带上AntiForgeryToken防止CSRF攻击

    经常看到在项目中ajax post数据到服务器不加防伪标记,造成CSRF攻击 在Asp.net Mvc里加入防伪标记很简单在表单中加入Html.AntiForgeryToken()即可. Html.A ...

  4. ZOJ 2314 带上下界的可行流

    对于无源汇问题,方法有两种. 1 从边的角度来处理. 新建超级源汇, 对于每一条有下界的边,x->y, 建立有向边 超级源->y ,容量为x->y下界,建立有向边 x-> 超级 ...

  5. Excel等外部程序点击链接会带上IE信息的bug

    今天碰到一个问题,在Excel内点击链接到默认浏览器Chrome打开,奇怪的是服务端收到的Session一直对不上. 查了很久发现这个Excel到Chrome的跳转竟然带上了IE的Cookie 和 U ...

  6. 切记ajax中要带上AntiForgeryToken防止CSRF攻击

    在程序项目中经常看到ajax post数据到服务器没有加上防伪标记,导致CSRF被攻击,下面小编通过本篇文章给大家介绍ajax中要带上AntiForgeryToken防止CSRF攻击,感兴趣的朋友一起 ...

  7. echo json数据给ajax后, 需要加上exit,防止往下执行,带上其他数据,到时ajax失败

    01返回json数据给ajax后需要加上exit.返回json数据前不能有其他输出 function apply(){ if(IS_POST){$info['status'] = 1; echo js ...

  8. idhttp提交post带参数并带上cookie

    有这么一个提交连接 http://www.XXXXXX.com/test.php?p1=411328&p2=1&d1=HeroSkinList 一共有三个参数[p1]  [p2]  [ ...

  9. Django 如何让ajax的POST方法带上CSRF令牌

    问题 大家知道,在大前端领域,有一种叫做ajax的东东,即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),它被用来在不刷新页面的情况下,提 ...

随机推荐

  1. BZOJ 3224 - 普通平衡树 - [Treap][Splay]

    题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=3224 Description 您需要写一种数据结构(可参考题目标题),来维护一些数,其中 ...

  2. pytorch定义一个简单的神经网络

    刚学习pytorch,简单记录一下 """ test Funcition """ import torch from torch.autog ...

  3. Shell实现判断进程是否存在并重新启动脚本

    Shell实现判断进程是否存在并重新启动脚本 - superbfly的专栏 - CSDN博客 https://blog.csdn.net/superbfly/article/details/52513 ...

  4. 从urllib2的内存泄露看python的GC python引用计数 对象的引用数 循环引用

    这里会发现上述代码是存在内存泄露,造成的原因就是lz与ow这两个变量存在循环引用,Python 不知道按照什么样的安全次序来调用对象的 __del__() 函数,导致对象始终存活在 gc.garbag ...

  5. a mechanism for code reuse in single inheritance languages

    php.net <?php class Base { public function sayHello() { echo 'Hello'; } } trait SayWorld { public ...

  6. Instruments之Leaks学习

    前言: 本篇文章,在于学习,我把别人的一些感觉好的文章汇总成了一篇,亲自实现了一下,留用于今后学习资料. 文章脉络:文章脉络: 一.内存优化 简介:Objective_C 有3种内存管理方法, 它们分 ...

  7. 中位数&贪心

    谁能想到基本算法就这么难呢?我想去冲省选,但是迟迟在这些地方 花时间 算是提升自己的思维算了. 这道题呢 答案其实很简单每个数在a的位置和在b的位置之差的累加/2即是答案为什么呢?考虑当前数字 要向后 ...

  8. js 正则判断字符串下划线的长度

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 简述 cookies 和 session 的区别

    1.cookie 和 session 的区别是:cookie数据保存在客户端,session数据保存在服务器端: 2.两个都可以用来存私密的东西,同样也都有有效期的说法,区别在于session是放在服 ...

  10. ubuntu上解压目录里的文件到指定文件夹

    去除目录结构加上 --strip-components N 如: 压缩文件eg.tar 中文件信息为 src/src/src/eg.txt 运行 tar -xvf eg.tar --strip-com ...