什么是REST API? 它指示停止或暂停吗? RESTful API是一种惰性程序还是一种启动休息状态的程序? 如果您对Web及其背后的各种技术都完全感兴趣,那么您将想了解RESTful API。
API是应用程序编程接口。 对于许多程序员来说,API可能有很多事情,但从本质上讲,它是一个中间人,允许您将一个程序插入另一个程序。 许多程序员和开发人员将隐藏他们的核心代码,以阻止其他人窃取他们的所有辛苦工作。 如果他们希望其他程序与他们的程序一起工作,则他们还必须提供一些代码以允许该交互。 那就是API的用武之地。开发人员可以创建API,该API允许其他程序与其创建界面,并提供额外的功能和交互。
API将以某种特定的格式编写,该特定的格式可以使资源能够理解并且不会使用太多资源。 许多网站,程序和平台都使用API。 Facebook使用它们,YouTube使用它们,Google Maps使用它们,Android和iOS使用它们,最著名的软件将具有某种编程界面。 这是在不向世界展示程序如何组合的情况下增加价值和功能的好方法。
API如何使用?
例如,假设您要为手机构建一组相机滤镜。 您可以使用Apple或Android的相机API来使用相机,而不是构建自己的相机应用。 替代方案是为每个电话操作系统创建全新的摄像头软件,这需要大量工作。 取而代之的是,您只需要创建一个可以与现有相机软件进行通信的API,并向其发送过滤数据即可。
API还可以用于访问系统资源,与其他系统接口,为浏览器和所有其他好东西提供增值功能。 如果您只记得API是一段与其他程序对话的代码,那您就可以了。
另一个示例是Google地图。 如果要将Google Map添加到显示您的位置的网站,则可以设置带有HTTP GET查询的Google Maps API,以从Google提取地图。 这样,您无需谷歌就可以做任何事情,也不必访问其映射平台的内部。
通过使用API,Google Maps服务器可以在短时间内满足数百万个查询,而不会使Maps服务器超载。 API查询将被正确地构造为能够使用最少的资源得到满足。 RESTful API可确保什么都无法写入数据库,也不会留下任何痕迹,从而使地图服务器可以继续进行下一个查询。
RESTful API
REST代表代表性状态转移。 RESTful API用于将数据从一种资源传输到客户端。 例如,搜索引擎使用一种RESTful API。 您输入搜索词,然后引擎查询服务器。 该服务将相关数据传输到您的浏览器供您使用。 这就是RESTful API的工作方式。
您现在知道,API允许外部程序与某些其他程序交互。 RESTful API允许独立程序与完全独立的数据库进行通信,如上面的搜索引擎示例中所示。
使RESTful API起作用的原因在于它是无状态且可缓存的。 无状态意味着RESTful API进行的查询对数据库没有影响。 查询不会(始终)记录,数据库上没有存储任何内容,也无法写入数据库。 它本质上是只读的。
可缓存意味着API客户端可以存储信息以备将来使用,因此不必每次都查询数据库。
对于Web,API可能会使用HTTP方法来处理请求。 常见的HTTP方法是GET,POST,PUT和DELETE。 在搜索引擎示例中,RESTful API将使用HTTP方法从搜索引擎数据库中获取搜索查询数据,以显示搜索结果。
另一个示例是Twitter用户搜索。 如果将URL www.twitter.com/realDonaldTrump放入浏览器,浏览器将使用HTTP从Twitter获取Donald Trump的数据并将其显示给您。 由于Twitter用户名是唯一的,因此查询会将详细信息返回到您的浏览器。
RESTful API是一种非常优雅的共享信息的方式,而不会影响服务器性能或提供过多的资源。 本教程只是从表面上介绍了它们如何工作以及如何集成到网络中,但是它应该使您对正在发生的事情有基本的了解。