什么是 API

每个人都在寻找薪水最高的工作以便进入这个行业而且在这个列表中Web 开发人员多年来一直处于领先地位并且由于需求量很大将继续保持在同一位置如果您是想要进入这个行业的人您必须了解其中使用的最重要的术语在所有术语中API 是另一个在构建网站中发挥非常重要作用的术语那么什么是 API -(应用程序编程接口)?

API(应用程序编程接口)

为了让您通过图表清楚地了解什么是 API让我们举一个现实生活中的 API 示例您可以将 API 视为餐厅中的服务员他会听取您的订单请求找到厨师拿走订购的食物并将订单交给您此外如果您想通过示例查找 API 的工作原理这里有一个您正在XYZ网站上搜索课程(假设为 DSA-Self Paced)您通过 API 发送请求(请求产品搜索)然后数据库搜索课程并检查它是否可用API负责将您的请求发送到数据库(搜索课程)并以输出(最佳 DSA 课程)进行响应

什么是 API?

API 的全称应用程序编程接口它是各种程序之间通信使用的通信协议和子例程的集合程序员可以使用各种 API 工具来使他们的程序更容易更简单此外API 还为程序员提供了一种开发软件程序的有效方法因此api 的意思是当 API 通过为两个程序或应用程序提供必要的工具和功能来帮助它们相互通信时它接收来自用户的请求并将其发送给服务提供商然后再次将服务提供商生成的结果发送给所需的用户

开发人员在其软件中广泛使用 API通过使用 API 调用来实现各种功能而无需为其编写复杂的代码我们可以为操作系统数据库系统硬件系统JavaScript 文件或类似的面向对象文件创建 API此外API 类似于 GUI(图形用户界面)但有一个主要区别与 GUI 不同应用程序界面可帮助软件开发人员访问 Web 工具而 GUI 有助于使程序更易于用户理解

API 如何工作?

只需几个简单的步骤即可清楚地解释 API 的工作原理想象一下客户端-服务器架构其中客户端通过介质将请求发送到服务器并通过同一介质接收响应API 充当两个程序或系统之间的通信介质以实现功能客户端是用户/客户(发送请求的人)介质是应用程序接口编程服务器是后端(接受请求并提供响应的地方)API 的工作步骤如下

  • 客户端通过 API URI(统一资源标识符)发起请求
  • API 收到请求后向服务器发出调用
  • 然后服务器将响应发送回 API其中包含信息
  • 最后API将数据传输到客户端

API 在攻击方面被认为是安全的因为它包含授权凭据和 API 网关来限制访问从而最大限度地减少安全威胁为了给数据提供额外的安全层使用了 HTTP 标头查询字符串参数或 cookie

API 与 Web 应用程序有何不同?

API 充当允许两个程序之间正确通信的接口而 Web 应用程序是负责完成单个任务的基于网络的资源此外重要的是要知道“所有 Web 服务都是 API但并非所有 API 都是 Web”

API 和 Web 应用程序之间的区别在于API 允许双向通信而 Web 应用程序只是用户通过 Web 浏览器进行交互的一种方式Web 应用程序可能具有 API 来完成请求

API 类型

API 有三种基本形式

1. WEB API

Web API也称为 Web 服务是网络上广泛使用的 API可以使用 HTTP 协议轻松访问Web应用程序编程接口是一种开源接口大量客户端可以通过手机平板电脑或 PC 使用

2. 本地 API

在这种类型的 API 中程序员可以获得本地中间件服务TAPI(电话应用程序编程接口)和 .NET 是本地 API 的常见示例

3. 程序 API

它利用 RPC(远程过程调用)使远程程序看起来像本地程序SOAP 是此类 API 的一个著名示例

其他一些类型的 API

  • SOAP(简单对象访问协议)它定义了 Web 应用程序用于相互通信的 XML 格式的消息
  • REST(表述性状态转移)它利用 HTTP 来获取发布放置或删除数据它主要用于利用现有数据
  • JSON-RPC使用JSON进行数据传输是一种定义一些数据结构类型的轻量级远程过程调用
  • XML-RPC基于XML使用HTTP进行数据传输该API被广泛用于两个或多个网络之间的信息交换

什么是 REST API?

REST 代表表述性状态转移遵循 REST 架构的约束允许与 RESTful Web 服务进行交互它定义了一组函数(GETPUTPOSTDELETE)客户端可以使用这些函数访问服务器数据使用的函数包括

  • GET(检索记录)
  • PUT(更新记录)
  • POST(创建记录)
  • DELETE(删除记录)

其主要特点是 REST API 是无状态的即服务器在请求之间不会保存客户端的数据

什么是 Web API?

Web API 简单来说就是 Web 的 API它是可以使用 HTTP 协议访问的 API可以使用 Java、.nET 等构建它用于扩展浏览器的功能简化复杂的功能并为复杂的代码提供简单的语法

Web API 的四种主要类型是

  • 开放API
  • 合作伙伴 API
  • 内部 API
  • 复合 API

SOAP 与 REST

肥皂

休息

SOAP(简单对象访问协议)是一种具有特定要求的协议例如 XML 消息传递 REST(表述性状态转移)是一套提供灵活实施的指南(架构风格)
更重需要更多带宽 重量轻占用带宽少
它定义了自己的安全 它从底层传输继承了安全性
它仅允许基于 XML 的数据格式 它允许不同的数据格式例如纯文本HTMLXMLJSON 等
SOAP 调用无法缓存 REST 调用可以缓存

什么是 API(应用程序编程接口)集成?

API(应用程序编程接口)集成是通过 API 连接两个或多个应用程序让您可以交换数据它是一种媒介您可以通过它共享数据并相互通信方法是使用 API 来允许 Web 工具进行通信由于基于云的产品的兴起API 集成变得非常重要

什么是 API(应用程序编程接口)测试?

API(应用程序编程接口)测试是一种软件测试它分析 API 的功能安全性性能和可靠性测试 API 非常重要以检查它是否按预期工作如果没有则再次对架构进行更改并重新验证

API 是软件开发的核心用于跨应用程序交换数据API 测试包括向单个/多个 API 端点发送请求并验证响应它主要关注业务逻辑数据响应和安全性以及性能瓶颈

API 测试工具

  • 邮差
  • Apigee
  • JMeter
  • Ping API
  • 肥皂用户界面
  • 静态REST

如何创建 API?

除非你非常清楚基本概念否则创建 API 是一项简单的任务这是一个迭代过程(基于反馈)仅包括几个简单的步骤

  • 规划你的目标和目标用户
  • 设计 API 架构
  • 开发(实施代码)并测试 API
  • 监控其工作并根据反馈开展工作

必读内容构建 API 的技巧

使用 API 的限制

当创建 API(应用程序编程接口)时它实际上并不是作为可供下载的软件发布并且它有一些管理其使用或限制其使用的政策通常管理 API 的政策主要有三种类型分别是

  • 私有这些 API 仅为单个个人或实体(例如花费资源制作或购买它的公司)制作
  • 合作伙伴顾名思义它将API的使用权限授予拥有API的实体的一些合作伙伴供其私人使用
  • 公共您应该了解它们因为如果您不拥有某个拥有这些 API 供私人使用的私有实体的特定 API 访问权限那么您只能在市场上找到这些 API 供自己使用公共 API 的一个示例是 Microsoft 的“Windows API”有关更多公共 API您可以访问此 GitHub 存储库 -> https://github.com/public-apis/public-apis

API 的优势

  • 效率与组织中人类所产生的输出相比API 产生的结果更高效更快速更可靠
  • 灵活的服务交付 API根据开发者的需求提供快速灵活的服务交付
  • 集成 API 的最佳特性是它允许在各个站点之间移动数据从而增强集成的用户体验
  • 自动化由于 API 使用机器人计算机而不是人类因此它可以产生更好更自动化的结果
  • 新功能使用 API 时开发人员可以发现用于 API 交换的新工具和功能

API 的缺点

  • 成本开发和实施 API 有时成本很高并且需要开发人员进行大量的维护和支持
  • 安全问题使用API​​会增加另一层表面容易受到攻击因此安全风险问题在API中很常见

结论

到目前为止您一定已经清楚地了解了什么是 API?它的工作原理类型使用的测试工具等了解这些概念后您可以尝试通过在项目中实现一些概念来研究它们不仅仅是理论知识您还必须通过实践对它有一个实际的想法开发人员必须对 API 有深刻的理解才能实现它们

※※免费获取 GPTGPT&Claude账号※※

本站提供免费ChatGPT共享账号号池链接https://chatai.qqyunsd.com

如果想使用低价稳定个人独立账号可进入本站小店进行购买全网最低价账号全程售后保障客服跟进

小店链接https://store.aiprois.com/

客服微信youngchatgpt

本站官网https://aiprois.com/

gpt-4 chatgpt plus共享账号 10人拼车 gpt-4模型 plus账号 30天有效月租 x,gpt4o价格,更改chatgpt密码,,chatgpt 修改密码,chatgpt 改密码,chatgptplus怎么充值,学生购买gpt,gpt便宜账号

© 版权声明
THE END
喜欢就支持一下吧
点赞411 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容