Restful API
公司开发出了某套产品,需要将该产品的服务写成接口,供其他部门或者其他公司的开发人员去调用,接口最好设计成统一且合理的风格形式,Re
公司开发出了某套产品,需要将该产品的服务写成接口,供其他部门或者其他公司的开发人员去调用,接口最好设计成统一且合理的风格形式,Restful API就是一套比较流行的接口形式。目前很多后端将他们提供的服务封装在restful风格的API中,比如华为云的对象存储服务(OBS)和阿里云的对象存储服务(OSS),具体可以参考官网的API使用文档。
什么是Restful API?
一句话:基于HTTP协议,采用URI(统一资源标识符)表示资源,采用HTTP动词表示对资源进行的操作。
URI
Uniform Resource Identifier的缩写,用来唯一表示互联网中的某一资源,常用的是URL(Uniform Resource Locator),统一资源定位符。
HTTP动词
用来完成CRUD操作(Create、Retrieve、Upload、Delete),restful api的http动词与http协议的动词有些许不同,且不同公司的restful api里http动词的含义都会有细微的差别,大多数restful api里http动词含义如下:
GET:用来获取资源,nPOST:用来新建资源(也可以用于更新资源),nPUT:用来更新资源,nDELETE:用来删除资源
以华为云对象存储服务(OBS)里的restful api为例,以下api请求是往桶名为bucktname的桶里上传对象名为objetName的对象。
PUT /ObjectName HTTP/1.1nHost: bucketname .obs.cn-north-4.myhuaweicloud.comnContent-Type: application/xmlnContent-Length: lengthnAuthorization: authorizationnDate: daten<Optional Additional Header>n<object Content>
为什么要用Restful API
总结了两个原因:
1、分离前后端
目前前端的形式有很多,比如手机客户端、web客户端、ipad客户端和电脑桌面应用客户端等,如果前后端不分离,给不同前段提供接口,后端要写很多重复代码,如果后端将自己提供的服务统一封装在一套restful api供不通的前端调用,将会提高开发效率。
2、方便不同服务之间调用
开发人员在自己的应用里调用微信账号登录,百度地图定位等第三方功能时,实际上是在自己的程序中调用了这些公司提供的api接口,有一套统一风格的restful api,会减少兼容问题,方便程序员开发。
参考
怎样用通俗的语言解释REST,以及RESTful?华为云对象存储服务(OBS)API文档阿里云对象存储服务(OSS)API开发文档上一篇:井架座底
下一篇:RESTful API