云计算中的RESTful API入门

许多人认为 API 是组织访问云计算供应商提供的服务的最佳方法。云使用者使用 API 作为软件接口,以各种方式连接和使用资源,但最优或现代的途径是使用基于 ">RESTful 协议的 API。请继续阅读,理解 API 的概念,以及它们在 REST API 和云计算服务中如何使用。本文提供了多个用例来演示如何在真实世界中使用此技术。

API 入门

API 是一些软件接口,它们针对数据处理而优化了应用程序或服务的开发。开发人员常常通过头文件将 API 导入或集成到现有代码库中。但是,随着 Web 服务的诞生,开发人员开始创建 API,将发布或使用基于 Web 的服务的能力与第三方系统软件相结合。

随着技术的不断成熟,科技公司和职能部门已开始转移(或者至少已经在尝试转移)到面向服务的体系架构 (SOA) 模型。该模型允许使用面向对象的编程语言来开发 Web 服务,开发人员可适当地调用和重用这些服务。Google Maps API 就是一个基于 Web 的 API 的示例,它允许开发人员在其应用程序或网站中适当地调用和使用此服务。

API 的结构

开发人员需要遵循最佳实践和标准来正确地开发、发布和使用 API。这些最佳实践和标准依赖于 API 针对的编程语言所规定的基本结构,这些语言包括 Java、Microsoft® .NET、Objective-C、JavaScript Object Notation (JSON) 或可扩展标记语言 (XML)。图 1 和图 2 给出了基于 XML 的 API 的一些示例。

图 1 是 PAID 的运送 API,它允许组织将此功能捆绑到其电子商务站点中。

图 1. 用于运送和物流用途的 API(该图的使用已获得 AuctionInc 的许可)

图 2 是 Instra 的 API,它允许组织出于基础架构用途而直接连接到他们的域名注册商。

图 2. 用于域名托管用途的 API(该图的使用已获得 Instra Corporation 的许可)

除了使用的编程语言之外,API 还需要考虑服务本身的性质。换句话说,如果 API 是为客户端创建的,不是为服务器端使用而创建的,则需要遵循不同的规则。

无论 API 是为客户端用途而构建还是为服务器端用途而构建,开发人员面临的事实是,构建服务时都需要考虑高性能和安全处理。客户端 API 的开发人员会关注应用程序的用户界面、审美学和外观。服务器端 API 的开发人员要处理原始应用程序的高级功能或服务,考虑功能效用。无论 API 将用于何处,如今的开发人员都倾向于使用 RESTful API,这源于这些 API 的灵活性和通用性。

REST API

RESTful API 遵循 SOA 模型,因此基于 Web 服务的软件架构通常会通过 XML 或 JSON 将它用于集成用途。这意味着,它们被 Internet 浏览器或 Web 服务器使用。前面已经提到过,RESTful API 是一种相对较新的技术,需要开发人员拥有当前的 Web 2.0 技术的全面知识。因此,许多缺乏更新其技术栈的动力的组织可能无法使用此产品。可能目前未重视 RESTful API 的组织一定未考虑成为云使用者。这些组织可能包括法律事务所、高等教育机构和非营利集团。但是,RESTful API 已是一个既成事实。

主要的处理和存储资源已逐渐原理终端设备,从这种意义上讲技术已兜了一圈之后又回到了原位,与大型机和哑终端盛行的时期很相像。这源于全球化、越来越远程或移动化的员工、无处不在的 Internet 连接,以及 SOA 和 Web 2.0 技术(比如 RESTful API)的成熟。随着用于数据处理任务的云计算通过 API 加入战团,此趋势正在接近临界值。

时间: 2024-08-02 21:27:47

云计算中的RESTful API入门的相关文章

Restful API 就看这些文章 - 收藏集 - 掘金

一套设计良好的 RESTful API 如何成为前后端的桥梁? - 后端 - 掘金 移动互联网时代,RESTful API成为越来越重要的移动端和服务器端交互的形式.尤其是在很多互联网公司或者传统行业拥抱移动互联网的时候,一套设计良好的Restful API能够帮助互联网产品支持单服务端+多客户端的场景.RESTful架构本身是一个风格而不是... RESTful API 利器 Swagger - 后端 - 掘金 目前公司的项目对外交互都是采用 http resful的协议进行通信,数据格式采用

遗留应用现代化场景:如何正确使用RESTful API

企业正在使用RESTful API来现代化其基础架构的关键方面,但是该方案怎么才能工作呢?我们为此专门采访了OpenLegacy的Zeev Avidan. 对于不堪遗留基础架构重负,并寻找出路的企业而言,应用程序接口成为越来越有吸引力的方案. Zeev Avidan,OpenLegacy的产品副总裁,探讨了使用API来现代化遗留基础架构的典型方案,讨论了在这些方案中为什么RESTful API如此重要,以及很多企业的"遗留"基础架构实际上都比他们意识到的更有价值的原因. 使用API现代

Yii2中Restful API原理实例分析_php实例

本文实例分析了Yii2中Restful API原理.分享给大家供大家参考,具体如下: Yii2 有个很重要的特性是对 Restful API的默认支持, 通过短短的几个配置就可以实现简单的对现有Model的RESTful API 这里通过分析rest部分源码,简单剖析下yii2 实现 restful 的原理,并通过一些定制实现 对 关联模型的RESTful api 操作. ~ 代表 extends from 的关系 | | rest/ | | |-Action.php ~ `\yii\base\

Yii2中Restful API原理实例分析

本文实例分析了Yii2中Restful API原理.分享给大家供大家参考,具体如下: Yii2 有个很重要的特性是对 Restful API的默认支持, 通过短短的几个配置就可以实现简单的对现有Model的RESTful API 这里通过分析rest部分源码,简单剖析下yii2 实现 restful 的原理,并通过一些定制实现 对 关联模型的RESTful api 操作. ~ 代表 extends from 的关系 | | rest/ | | |-Action.php ~ `\yii\base\

Spring Boot中使用Swagger2构建强大的RESTful API文档

由于Spring Boot能够快速开发.便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API.而我们构建RESTful API的目的通常都是由于多终端的原因,这些终端会共用很多底层业务逻辑,因此我们会抽象出这样一层来同时服务于多个移动端或者Web前端. 这样一来,我们的RESTful API就有可能要面对多个开发人员或多个开发团队:IOS开发.Android开发或是Web开发等.为了减少与其他团队平时开发期间的频繁沟通成本,传统做法我们会创建一份RESTf

PHP中Restful api 错误提示返回值实现思路_php实例

RESTful架构是一种流行的互联网软件架构,它结构清晰,符合标准,易于理解,扩展方便. REST是Representational State Transfer的缩写,翻译为"表现层状态转化".表现层其实就是资源,因此可以理解为"资源状态转化". 网络应用上的任何实体都可以看作是一种资源,通过一个URI(统一资源定位符)指向它. 序言 不管是微博还是淘宝,他们都有自己的错误返回值格式规范,以及错误代码说明,这样不但手机端用起来方便,给人的感觉也清晰明了,高大上.遇

逐条讲解:云计算中的容器技术

在如今,在讨论云时是很难不提及容器技术的.无论你是刚刚入门的技术新人或者经验丰富的专业人士,一定都应当知道这些与云中容器技术相关的重要术语. 随着云计算中容器技术的普及,越来越多的企业都不选择考虑其他选项了. 虽然容器技术已经面世一段较长时间了,但最近是Docker帮助它们进入了企业应用的焦点.随着云的发展,更多的企业了解了采用混合云和多云模式的好处,但是确保软件在不同环境之间迁移时能够稳定运行则成为了一大挑战.容器技术是通过将应用程序机器所有组件打包成为单个可便携的包来解决这一难题的. 此外,

Yii2框架RESTful API 格式化响应,授权认证和速率限制三部分详解

之前写过一篇Yii2框架制作RESTful风格的API快速入门教程,今天接着来探究一下Yii2 RESTful的格式化响应,授权认证和速率限制三个部分 一.目录结构 先列出需要改动的文件.目录如下: web ├─ common │ └─ models │ └ User.php └─ frontend ├─ config │ └ main.php └─ controllers └ BookController.php 二.格式化响应 Yii2 RESTful支持JSON和XML格式,如果想指定返回

用 Flask 来写个轻博客 (32) — 使用 Flask-RESTful 来构建 RESTful API 之一

目录 目录 前文列表 扩展阅读 RESTful API REST 原则 无状态原则 面向资源 RESTful API 的优势 REST 约束 前文列表 用 Flask 来写个轻博客 (1) - 创建项目 用 Flask 来写个轻博客 (2) - Hello World! 用 Flask 来写个轻博客 (3) - (M)VC_连接 MySQL 和 SQLAlchemy 用 Flask 来写个轻博客 (4) - (M)VC_创建数据模型和表 用 Flask 来写个轻博客 (5) - (M)VC_SQ