专业小程序设计开发——助力新电商新零售
电话+V:159999-78052,欢迎咨询RESTful API,[小程序设计与开发],[小程序投流与推广],[小程序后台搭建],[小程序整套源码打包],[为个体及小微企业助力],[电商新零售模式],[小程序运营推广及维护]
一、什么是RestfulAPI
1、不使用url参数:
传统API设计:/api/list?pageIndex=2
RestfulAPI设计:/api/list/2
2、用method表示操作类型
传统API设计:
RestfulAPI设计:
3、传统API设计:把每个url当做一个功能
RestfulAPI设计:把每个url当做一个唯一的资源
简单说RestfulAPI就是API的规范。
目的:
1、为了实现前后端分离。
2、减少沟通成本,让API通俗易懂,提高API的可读性。
3、多端公用一套接口
在REST架构风格中,每一个URI代表一种资源。因此,URI是每一个资源的地址的唯一资源定位符。所谓资源,实际上就是一个信息实体,它可以是服务器上的一段文本、一个文件、一张图片、一首歌曲,或者是一种服务。RESTfulAPI规定了通过GET、POST、PUT、PATCH、DELETE等方式对服务端的资源进行操作。
二、RESTfulAPIVS传统API
RESTfulAPI与传统API相比,呈现出明显的优点,它通过利用Web标准和HTTP协议,实现无状态、分层和简洁的设计原则,从而构建出简单、可扩展和可靠的架构。RESTfulAPI以GET、DELETE、PUT和POST等方法定义,操作性强且接口统一,特别适应移动互联网的多元化需求,简化了API的使用和维护。与WebService和WCF等传统接口方式相比,RESTful在扩展性、易用性和可维护性上更具优势,能够更好地支持跨平台服务。
RESTfulAPI,遵循REST架构风格,其核心操作方法包括GET(获取资源)、POST(创建资源)、PUT(更新资源)和DELETE(删除资源)。这种方式强调每个请求的独立性和数据的直接传输,降低了服务器对客户端状态的依赖,适合云计算环境并能有效提高性能。
与传统API接口设计相比,RESTfulAPI更倾向于标准化和通用性,无论客户端是Web、iOS还是Android,都能通过一套接口进行无缝对接。这在移动互联网快速发展的今天,为开发人员提供了更加便捷和灵活的开发环境,极大地简化了API设计和维护的工作量。
什么是RESTfulAPI?看完整个人都通透了
原创2021-09-29 15:22·码同学软件测试
要弄清楚什么是RESTfulAPI,首先要弄清楚什么是REST?
01RESTREpresentationalStateTransfer,英语的直译就是“表现层状态转移”。如果看这个概念,估计没几个人能明白是什么意思。那下面就让我来用一句话解释一下什么是RESTful:URL定位资源,用HTTP动词(GET,POST,PUT,DELETE)描述操作。Resource:资源,即数据。Representational:某种表现形式,比如用JSON,XML,JPEG等;StateTransfer:状态变化。通过HTTP动词实现。
所以RESTfulAPI就是REST风格的API。那么在什么场景下使用RESTfulAPI呢?在当今的互联网应用的前端展示媒介很丰富。有手机、有平板电脑还有PC以及其他的展示媒介。那么这些前端接收到的用户请求统一由一个后台来处理并返回给不同的前端肯定是最科学和最经济的方式,RESTfulAPI就是一套协议来规范多种形式的前端和同一个后台的交互方式。
RESTfulAPI由后台也就是SERVER来提供前端来调用。前端调用API向后台发起HTTP请求,后台响应请求将处理结果反馈给前端。也就是说RESTful是典型的基于HTTP的协议。
02RESTfulAPI的设计原则和规范
资源首先是弄清楚资源的概念。资源就是网络上的一个实体,一段文本,一张图片或者一首歌曲。资源总是要通过一种载体来反应它的内容。文本可以用TXT,也可以用HTML或者XML、图片可以用JPG格式或者PNG格式,JSON是现在最常用的资源表现形式。
统一接口RESTful风格的数据元操CRUD(create,read,update,delete)分别对应HTTP方法:GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源,这样就统一了数据操作的接口。
URI可以用一个URI(统一资源定位符)指向资源,即每个URI都对应一个特定的资源。要获取这个资源访问它的URI就可以,因此URI就成了每一个资源的地址或识别符。一般的,每个资源至少有一个URI与之对应,最典型的URI就是URL。
无状态所谓无状态即所有的资源都可以URI定位,而且这个定位与其他资源无关,也不会因为其他资源的变化而变化。
有状态和无状态的区别,举个例子说明一下:例如要查询员工工资的步骤为:第一步:登录系统第二步:进入查询工资的页面第三步:搜索该员工第四步:点击姓名查看工资
这样的操作流程就是有状态的,查询工资的每一个步骤都依赖于前一个步骤,只要前置操作不成功,后续操作就无法执行。如果输入一个URL就可以得到指定员工的工资,则这种情况就是无状态的,因为获取工资不依赖于其他资源或状态,且这种情况下,员工工资是一个资源,由一个URL与之对应可以通过HTTP中的GET方法得到资源,这就是典型的RESTful风格。
说了这么多,到底RESTful长什么样子的呢?GET:http://www.xxx.com/source/id获取指定ID的某一类资源。例如GET:http://www.xxx.com/friends/123表示获取ID为123的会员的好友列表。如果不加id就表示获取所有会员的好友列表。POST:http://www.xxx.com/friends/123表示为指定ID为123的会员新增好友。其他的操作类似就不举例了。
RESTfulAPI还有其他一些规范:应该将API的版本号放入URLGET:http://www.xxx.com/v1/friend/123。或者将版本号放在HTTP头信息中。我个人觉得要不要版本号取决于自己开发团队的习惯和业务的需要,不是强制的。URL中只能有名词而不能有动词,操作的表达是使用HTTP的动词GET,POST,PUT,DELETE。URL只标识资源的地址,既然是资源那就是名词了如果记录数量很多,服务器不可能都将它们返回给用户。API应该提供参数,过滤返回结果。?limit=10:指定返回记录的数量、?page=2per_page=100:指定第几页,以及每页的记录数。【WINDRISES MINIPROGRAM PROMOTION】尊享直接对接老板
电话+V: 159999-78052
专注于小程序推广配套流程服务方案。为企业及个人客户提供了高性价比的运营方案,解决小微企业和个体拓展客户的问题