【Restful API中文教学】一文看清API、CRUD及Restful

相信大家都十分熟悉网上购物、网上订座等服务吧,但背后的运作是怎样的,你知道吗?

靠著API,能将软件与硬件连结在一起,使我们现时的生活更方便。

那甚么是API呢?Restful又是什么?

这篇「Restful API中文教学 - 一文看清API、CRUD及Restful」将让你学会:

  • API的基本原理
  • CRUD的运作
  • Restful API的原理

准备好了吗? 我们开始吧!

甚么是API?

API全名叫Application Programming Interface(应用程式介面)。

现时,我们只要透过互联网,用指尖点一点或输入简单的文字,在一瞬间,便能够与世界接触。

例如:我们可以透过网购来购买衣服、透过网络来购买电影票。究竟背后是怎样运作的呢?

事实上API就是幕后功臣,担当著邮差的角色,游走于应用程式(app)、资料库(database)、装置(device)之间,互相传送资料,最后创造连结,并成功为顾客提供服务。

还是不太明白?用网购作例子吧!你在网店上选择了喜欢的商品后,可以使用信用卡来付款。

这个时候,这间网店,就正是连接了信用卡系统,而信用卡系统又连接了你的银行户口。这些不同的系统/软件/硬件,理应不能直接地互动。要让他们连在一起, 互相沟通,就要透过一个Interface (介面),那就是API了。

看看这幅图,软件A向软件B发出一个Request (请求);软件B在接收到Request后,就可以作出Response(回应)。

比方说:我在网页上,按「买东西」。网页就会和背后的Server,发出一个Request,说要「买东西」。Server在收到这个Request后,就可以作出一个Response, 说「你已成功购买」。

这个就是API运作的简单流程了。

CRUD Operation

网页对Server发出的Request,通常包含4个不同的动作:

  • Create
  • Read
  • Update
  • Delete

你懂得CRUD Operation后,就已经能做到大部分Backend(后台)的功能了。

比方说,你是做一个类似Airbnb的网页,网页上当然会有酒店的资料,因此用家可以:

  • Create-建立新的酒店
  • Read-读取现有酒店的资料
  • Update -更新现有酒店的资料
  • Delete - 删除现有酒店的资料

这样的4个动作,其实就已经涵盖了对酒店资料全部的操作。这个就是CRUD Operation了。

Restful API

1.API endpoint

要对这些酒店资料进行操作,就需要一个API endpoint,比方以:https://airbnb.com/api/hotels为例。

https://airbnb.com/api/是我们的网址,而hotels就是我们要进行操作的资料,我们称为Resources。在这个例子hotels就代表酒店资料了。

2.CRUD Operation

在做Crud Operation前,我们先要知道4种通用的HTTP Methods,它们分别是:

  • GET-读取资料
  • POST-新增资料
  • UPDATE-更新资料
  • DELETE-删除资料

利用Restful架构,我们就可以进行CRUD Operation。

Create:建立新的酒店的话,我们会使用http method POST到这个API endpoint, 并附上这个新建的酒店资料。成功的话,我们就会收到这个新的酒店资料,作为Response。

Read:读取全部酒店资料的话,我们会使用http method GET到这个API endpoint。成功的话,我们就会收到全部酒店资料 (一堆Array), 作为Response。

Read:读取个别酒店资料的话,我们会使用http method GET到这个API endpoint,加上这个酒店的id。成功的话,我们就会收到这间酒店资料, 作为Response。

Update :更新现有酒店的资料的话,我们会使用http method PUT到这个API endpoint,并附上要更新资料的酒店id,及要更改的酒店资料。成功的话, 我们就会收到这个已更新的酒店资料,作为Response。

Delete :删除现有酒店的资料的话,我们会使用http method DELETE到这个API endpoint,并附上要删除的酒店的id。

由此可见,Restful API只会有5条,它们分别是:

  • POST /api/hotels
  • GET /api/hotels
  • GET /api/hotels/1
  • PUT /api/hotels/1
  • DELETE /api/hotels/1

利用以上API就可以控制全部酒店资料了,非常方便。

*现在Wordpress也可以让你把其资料, 进行Restful API操作。有关基本的Wordpress教学, 可以看看WORDPRESS教学课程 - 1小时就学会架站

结语

好了!以上就是API,CRUD,Restful API的介绍,希望对你有用!

你也可以上Youtube观看《什么是API?CRUD?Restful API又是什么?》:

如果大家有甚么问题,欢迎email与我讨论!

本文由作者【鬍子Jack】创作,原文刊登于【鬍子科技學院】,如未经授权不得转载。
回应