作者: 文章来源:杨宇 点击数: 更新时间:2018-01-24 14:06:59
应用程序的数据大多来自于开发人员提供的api,而在以往的开发过程中,不同的程序员有着不同的编码风格,这使得无论是给在对接过程还是交接过程都会造成一定的低效。而RESTful架构,以结构清晰等优点现在被大家广泛使用,使开发效率大大提高。RESTful (Representation State Transfer) 描述了一个架构样式的网络系统,比如 web 应用程序。它首次出现在 2000 年 Roy Fielding 的博士论文中,他是 HTTP 规范的主要编写者之一。RESTful 指的是一组架构约束条件和原则,满足这些约束条件和原则的应用程序或设计就是 RESTful。简单来说,RESTful架构就是一组约束条件和规则:每一个URI代表一种资源。 客户端和服务器之间,传递这种资源的某种表现层。 客户端通过四个HTTP动词(GET、POST、PUT、DELETE),对服务器端资源进行操作,实现”表现层状态转化”。
想要高效开发api,同时还需要注意下面几个原则:
1.瘦客户端原则:根据以往的开发经验来看,客户端任何的修改都是需要重新发版的,例如小程序,安卓,ios。特别是IOS需要走AppStore的审核流程。 所以开发过程中要注意客户端只负责展示,不处理数据。比如七牛的图片数据,业务逻辑和金额的计算。
2.安全性:敏感数据加密传输,如:登陆接口的密码字段,需要进行加密传输,避免被代理捕捉请求后获取明文密码;对传输的参数进行签名匹配,防止传输过程中被篡改;对请求次数进行限制,防爬虫及暴力破解等;其他:sql注入等等。
3.性能方面:合并接口(尽量一个页面不超过3个请求);合理使用缓存;及时清理无用字段清理;使用图片裁剪服务;区别对待wifi与移动网络。
4.兼容性:服务端根据业务变化经常需要修改接口,导致新老版本的客户端访问同一个接口。为了保证客户端调用接口不会出错,需要通过version字段。例如: http://api.liwushuo.com/v2/items/1047289 。
总而言之,熟练运用RESTful架构和上面的原则,可以使得你的应用程序的访问更加地流畅,合理。