美文网首页
API接口设计

API接口设计

作者: pubalabala | 来源:发表于2018-12-05 14:13 被阅读0次

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
[图片上传失败...(image-bd8d4-1543990291898)]

https://swagger.io/
[图片上传失败...(image-405a51-1543990291898)]

http://rap2.taobao.org - 新版
[图片上传失败...(image-fd31e-1543990291898)]

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

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

POSTMAN - 接口测试

相关文章

  • RESTful api接口安全优雅设计

    RESTful api接口安全优雅设计 ...

  • api 接口设计

    包括两部分: 业务场景 如推荐、排行、搜索 元素item 如问题、作者、直播

  • API接口设计

    API - Application Programming Interface 语言本身提供的API网络API(数...

  • django中tastypie风格接口设计

    需求背景: 使用tastypie原则开发api接口,同时对前面设计的api做适当优化。 tastypie风格接口设...

  • web-api总结

    总结一下ruby中如何写设计api接口: 1.api是程序之间的接口,一个服务端api接口包含http方法,URL...

  • 《全栈工程师修炼指南》学习笔记 3

    Web API 接口的设计核心是权衡(trade-off) Web API 设计步骤 明确核心问题,确定问题域 —...

  • 使用 Protobuf 设计 REST API

    概述 一个设计的好的 REST API 接口,需要一个严格的接口定义。本文试图使用 Protobuf 作为接口设计...

  • 2018-06-29

    接口设计 订单列表 接口链接 URL地址:http://192.168.0.0/api.qicheng.com/o...

  • API接口安全性设计

    API接口安全性设计 接口的安全性主要围绕Token、Timestamp和Sign三个机制展开设计,保证接口的数据...

  • php接口签名验证

    在做一些api接口设计时候会遇到设置权限问题,比如我这个接口只有指定的用户才能访问。 很多时候api接口是属于无状...

网友评论

      本文标题:API接口设计

      本文链接:https://www.haomeiwen.com/subject/booicqtx.html