一、API 介绍

  • 定义:API 是构建应用程序的一组协议和工具

  • 类型

    • 公共 API(Public API)
    • 私有 API(Private API)
    • 合作伙伴 API(Partner API)

二、API 术语

  • 需要理解的术语

    • HTTP 版本(1.1、2、3)
    • Cookies
    • 缓存(Caching)
    • 状态码
    • 请求方法(GET、POST、PUT、DELETE 等)

三、API 风格

  • 常见风格

    • REST
    • SOAP
    • GraphQL
    • gRPC
    • WebSockets

四、API 认证

  • 常用认证方式

    • Basic Auth
    • Token
    • JWT(JSON Web Token)
    • OAuth
    • Session Auth

五、API 文档

  • 重要性:好的 API 必须易于理解
  • 工具:Swagger, Postman, Redoc, DapperDox

六、API 功能特性

  • 分页(Pagination)
  • 请求参数(Parameters)
  • 幂等性(Idempotency)
  • API 版本控制(Versioning)
  • HATEOAS(Hypermedia as the Engine of Application State)
  • 内容协商(Content Negotiation)

七、API 性能优化技术

  • 缓存(Caching)
  • 限流(Rate Limiting)
  • 负载均衡(Load Balancing)
  • 分页(Pagination)
  • 数据库索引(DB Indexing)
  • 水平/垂直扩展(Scaling)
  • 性能测试(Performance Testing)

八、API 网关

  • 用途:统一管理 API、路由、认证、监控等
  • 常见网关:Amazon API Gateway, Azure API Services, Kong, Nginx

九、API 开发框架

  • Node.js
  • Spring
  • Flask
  • Django
  • FastAPI

十、API 集成模式

  • 网关模式(Gateway)
  • 事件驱动模式(Event-driven)
  • Webhook
  • 轮询(Polling)
  • 批处理(Batch Processing)