一、什么是API?
API(Application Programming Interface)即应用程序编程接口,是一组预先定义的函数或方法。
它的核心作用是:提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
简单来说,API就是:
- 不同软件组件之间通信的规则和协议集合
- 软件之间交互的规范,是软件与开发者之间的协议
- 帮助实现功能的工具,无需了解内部实现细节
API的主要特征:
- 输入和输出(I/O)
- 多为方法(函数)的形式
API的常见例子:
- 手机充电接口
- 手机操作系统提供的摄像头API(应用只需调用接口,无需了解摄像头内部构造)
- JavaScript中的
Math.max(1, 2, 3)等内置方法
二、什么是Web API?
Web API是网络应用程序接口,是通过HTTP协议提供的接口,用于不同系统间通过HTTP请求和响应进行通信。
Web API更通俗的理解是:
- 一种编程接口,由已定义的请求响应消息系统的一个或多个端点组成
- 通常以JSON或XML格式表示
- 通过网络(最常见的是基于HTTP的Web服务器)对外开放
Web API的核心用途:
- 前后端分离项目中的数据交互
- 不同应用、服务和平台访问和共享数据
- 支持存储、消息、计算服务
Web API的请求流程:
- 用户在浏览器中输入URL或通过其他程序手动或程序化地发起请求
- DNS服务器解析URL并返回IP地址
- Web服务器根据IP地址提供所需的数据
三、Web API的主要类型(按用途分类):
| 类型 | 说明 |
|---|---|
| 公共/开放API | 对公众开放,任何人都可以调用 |
| 私有/内部API | 企业内部使用,不对外公开 |
| 合作伙伴API | 与特定合作伙伴共享的API |
| 组合API | 将多个API组合使用的API |
四、Web API的常见HTTP方法:
| 方法 | 用途 | 典型应用场景 |
|---|---|---|
| GET | 获取资源数据 | 获取用户列表、查询产品详情 |
| POST | 创建新资源或提交数据 | 创建新用户、提交表单数据 |
| PUT/DELETE | 更新/删除资源 | 修改用户信息、删除数据 |
Web API的技术特点:
- 支持HTTP动词实现CRUD操作(增删改查)
- 支持JSON/XML格式数据
- 支持OData协议
- 可自托管或IIS托管
五、API vs Web API 的区别:
| 对比项 | API | Web API |
|---|---|---|
| 定义范围 | 通用概念,所有编程接口的统称 | 特指基于HTTP的网络接口 |
| 使用场景 | 系统内部组件间通信 | 不同系统间通过HTTP通信 |
| 数据格式 | 不限 | 通常为JSON/XML |
| 通信协议 | 不限 | 基于HTTP协议 |
| 前端Web API | 无特定含义 | 浏览器提供的操作功能和页面元素的接口(BOM和DOM) |
特别说明:在JavaScript前端开发中,Web API特指浏览器提供的一套操作浏览器功能和页面元素的接口(主要包括BOM和DOM)。例如:
alert()弹窗document.title设置页面标题console.log()输出调试信息
六、API平台的实际应用案例
在现实开发中,开发者通常通过API平台获取第三方数据和服务,例如:


294

被折叠的 条评论
为什么被折叠?



