接口

API - Application Programming Interface
语言本身提供的API
网络API(数据接口)- 免费开放(OpenAPI) / 付费

业务下沉 - 访问别人的接口 - urllib / requests / responses / http.client
业务上浮 - 提供数据接口给别人用 - djangrestframework - REST风格 - RESTful架构(风格)- ?

URL - 统一资源定位符 - 资源(名词) - CRUD - HTTP协议动词

REpresentation State Transfer

微服务架构 - 水平扩展

接口文档:

  1. 接口的URL以及请求的方式(GET/POST/PUT/DELETE)
  2. 请求这个接口可以做什么事情
  3. 请求这个接口需要提供什么参数
  • 参数名
  • 数据类型
  • 是否必填
  • 有没有默认值
  • 参数的位置(查询参数/表单参数/请求头参数)
  1. 请求这个接口会返回什么样的数据
  • XML / JSON / YAML
  • 数据格式(包含的内容)
  • 状态码代表什么含义

XML - eXtensible Markup Language - 异构系统之间交换数据 - 带结构的纯文本格式 - 事实标准

<?xml version="1.0" encoding="utf-8"?>
<messages>
<message>
<from gender="male">WangDachui</from>
<to>jackfrued</to>
<content>Dinner is on me!</content>
</message>
<message>
<from gender="female">Hellokitty</from>
<to>jackfrued</to>
<content>Dinner is on me!</content>
</message>
<message>
<from>WangDachui</from>
<to>jackfrued</to>
<content>Dinner is on me!</content>
</message>
</messages>

JSON - JavaScript Object Notation

[
{
'from': {
'name': 'Wangdachui', 
'gender': 'male'
}, 
'to': 'jackfrued',
'content': 'Dinner is on me!'
},
{
'from': {
'name': 'Hellokitty', 
'gender': 'female'
}, 
'to': 'jackfrued',
'content': 'Dinner is on me!'
},
{
'from': {
'name': 'Wangdachui', 
'gender': 'male'
}, 
'to': 'jackfrued',
'content': 'Dinner is on me!'
}
]

YAML - Yet Another Markup Language

messages:
  message:
    from: WangDachui
    gender: male
    to: jackfrued
    content: Dinner is on me!
  message:
    from: Hellokitty
    gender: female
    to: jackfrued
    content: Dinner is on me!
  message:
    from: WangDachui
    to: jackfrued
    content: Dinner is on me!

在线API文档和测试数据生成 - Swagger-UI / RAP2

https://swagger.io/

http://rap2.taobao.org - 新版

http://rapapi.org/org/index.do - 旧版

rst格式(reStructuredText) ----|
|------- pdf / word
md格式(Markdown) ----|

POSTMAN - 接口测试

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • what-接口是什么? 在计算机中,接口是计算机系统中两个独立的部件进行信息交换的共享边界。举个例子,我提供加法的...
    我为峰2014阅读 12,256评论 3 27
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,083评论 19 139
  • API - Application Programming Interface 语言本身提供的API网络API(数...
    pubalabala阅读 1,781评论 0 0
  • 接口测试讲义 1. 接口测试的类型 主要包含三种测试: Web接口测试, 应用程序接口(API, applicat...
    厲铆兄阅读 28,696评论 1 44
  • 泥泥呢阅读 212评论 0 0