1. 争取相容性和统一性

这里就要求让API设计得是可预测的。按照这种方式写出所有接口和接口所需要的参数。现在就要确保命名是一致的,接口所需的参数顺序也是一致的。你现在应该有products,orders和customers的数据吧?,它们应该都存在含有id和name的表中。那么不要让一个接口仅传ID而另一个仅传name还有的两个都要传。也不要让一个接口按照/product/ID传参而另一个接口按/ID/customer这样传参。因为作为一个API的使用者我希望以相同的方式访问两个不同的资源。

另外一个保证相容性的技巧是观察你的参数值类型。如果一个接口的ID参数求为整型,那么不要让另一个接口的ID参数为字符串型。因为作为一个API的使用者我不想去猜每个接口的每个参数值类型。

App后台开发运维和架构实践学习总结(3)——RestFul架构下API接口设计注意点相关推荐

  1. App后台开发运维和架构实践学习总结(12)——基于token的多平台身份认证架构设计

    分享一个大神的人工智能教程.零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!点击浏览教程 一.概述 在存在账号体系的信息系统中,对身份的鉴定是非常重要的事情.随着移动互联网时 ...

  2. App后台开发运维和架构实践学习总结(2)——RESTful API设计技巧

    前言 移动互联网时代,RESTful API成为越来越重要的移动端和服务器端交互的形式.尤其是在很多互联网公司或者传统行业拥抱移动互联网的时候,一套设计良好的Restful API能够帮助互联网产品支 ...

  3. App后台开发运维和架构实践学习总结(8)——后台产品设计的4个原则

    什么是后台产品 后台产品也被我们称为后台管理系统.内部管理系统.简单而言,是给企业员工开发的办公性质产品,同时也是对用户使用的App,Web等产品的一个伴生产品. 我们还可以将后台产品按照使用对象分成 ...

  4. App后台开发运维和架构实践学习总结(5)——App产品从需求到研发到开发到上线到产品迭代全过程

    前言 如果没有做过开发,研发过产品的人,很难体会做产品的艰难,刚进公司的人,一般充当的是程序开发,我这里说的是开发,它与研发是有区别的.一个需求下来,如果不能很好地理解产品需求,如果不能很好的驾驭需求 ...

  5. App后台开发运维和架构实践学习总结(13)——OAuth 2.0 概述流程理解

    一.应用场景 为了理解OAuth的适用场合,让我举一个假设的例子.有一个"云冲印"的网站,可以将用户储存在Google的照片,冲印出来.用户为了使用该服务,必须让"云冲印 ...

  6. App后台开发运维和架构实践学习总结(10)——基于Java-JWT前后端token认证实战使用详解

    一.什么是JWT?了解JWT,认知JWT 首先jwt其实是三个英语单词JSON Web Token的缩写.通过全名你可能就有一个基本的认知了.token一般都是用来认证的,比如我们系统中常用的用户登录 ...

  7. App后台开发运维和架构实践学习总结(6)——App客户端与后台交互方式总结

    1.HTTP简单基本认证方式 这个是早期交互用得比较多的一种方式,主要是使用用户名和密码来交互,由于在每次的交互中,用户名和密码都会暴露给第三方,那么这么做是不可取的,风险十分大,所以这种认证方式并没 ...

  8. App后台开发运维和架构实践学习总结(9)——三种常见的API设计错误及解决方案

    作为表单工具Typeform的API领头人,Jason Harmon恰好也与JSON schema同名了,他最近就"哪些因素破坏了生产环境"这个问题在APIdays会议上做了非常积 ...

  9. App后台开发运维和架构实践学习总结(4)——APP的注册和登录功能设计

    一.为什么需要注册和登录? 是否需要注册和登录的关键取决于产品形态. 如果用户注册登录对于用户需求.产品功能.商业模式本身带不来任何价值的话,就没必要设计这样的功能.比如一些实用工具类的产品:计算器. ...

最新文章

  1. git管理大项目或者大文件
  2. Head First Design Pattern
  3. Profiler 使用说明
  4. python中的__name__=='__main__'如何简单理解(一)
  5. 兆观毫米波监护仪亮相CMEF 开创养老监护新时代
  6. Linux里的/dev/null和21和基本符号
  7. JavaWeb — 请求响应流程图
  8. Vue的生命周期以及钩子函数
  9. 虚拟机Linux终端命令格式
  10. OpenCV 帧差法
  11. 51单片机学习笔记——STC15W201S系列
  12. 现在公司都不缺人了?软件测试工作经历3年,面试居然被坑了....
  13. 米色精致秋分主题PPT模板
  14. 计算机电缆的表示方式,各种电缆型号的表示方法
  15. 默哀这一刻 我们的心紧紧相连
  16. 个人博客作业三:英语学习APP的案例分析
  17. txt文件更改成java文件
  18. SCI和EI期刊会议知识导航
  19. 算法练习——在有序序列(r1,r2,...,rn)中,存在序号i(1<=i<=n),使得ri=i。请设计一个分治算法找到这个元素。 要求算法在最坏情况下的时间性能为O(logn))
  20. 大话数据结构之树(下)

热门文章

  1. excel去除html格式化,带有标签的HTML文本,用于在Excel单元格中格式化文本
  2. python安装成功之后教程_Python安装教程
  3. 动态添加select2input没样式_MIUI10壁纸升级:桌面动效壁纸与动态壁纸的前世今生...
  4. python 可迭代对象_Python3学习笔记(十四):可迭代对象、迭代器和生成器
  5. 聋校计算机教学工作总结,聋校二年级数学教学工作总结
  6. c语言实现可变单链表,c语言实现单链表
  7. mysql怎么精简_我这个mysql查询该如何精简,提高效率啊?
  8. orabbix监控oracle11g,orabbix 监控oracle
  9. linux环境c语言课程设计,linux环境下c语言编程课程设计
  10. 防火墙dhcp服务器性能,F100-A-G 防火墙当做DHCP服务器,下接E528交换机,能不能划分多个VLAN?...