1024程序员新技能:酷!零技术基础,一天模仿一套API接口
共 3117字,需浏览 7分钟
·
2021-10-29 17:03
前言
曾经在建站的年代,经常需要参考、模仿和复制别的网站,为了降低网站开发的技术难度和加快网站上线的速度,有很多可以在线编辑、设计和“即见即所得”的工具,可以让技术小白快速搭建属于自己的网站。
如今,针对小程序、APP、后台系统、API接口,也有同样的复制、模仿、复刻的需求。那么对于API接口,有没快速模仿的解决方案呢?
本文就来分享快速模仿、搭建和开放API接口的方案和工具。
适用场景
这里重点是提供和分享可以加快开发API接口的速度,和降低API接口开发的技术难度,几乎可以做到高效、低技术门槛。
适用的场景包括但不限于:
1、自己原来有一套内部的API接口,现在需要开放部分接口给外部客户使用
2、需要对接上游供应商的接口,然后开放提供给下游用户调用
3、作为平台方,需要接入聚合多个不同渠道的API接口
用到的工具
本次用的工具有:
1、免费的YesDev研发管理工具的接口文档(https://www.yesdev.cn/)
2、PhalApi开源接口框架或接口大师(pro.phalapi.net/)
模仿例子:抖店开放平台-API模仿
作为例子,假设我们需要集成抖店开放平台的店铺API,可以看到有7个接口。
7个接口分别是:
API英文名称 API简介 所属权限包
/shop/brandList 获取店铺的已授权品牌列表
/address/create 店铺创建售后地址接口
/address/update 店铺修改售后地址接口
/address/list 售后地址列表接口
/member/searchList 会员信息列表查询
/antispam/userLogin 商户登陆风险检查
/shop/getShopCategory 获取店铺后台供商家发布商品的类目
模仿API接口的操作步骤
首先,免费注册和登录YesDev后,进入工作台-接口文档,创建一个新的接口项目。
接口项目名称:抖店API接口模仿示例
接口域名:https://openapi-fxg.jinritemai.com
然后,开始复制抖店的第一个API接口。待复制的API接口是:API文档>店铺API>/shop/brandList
把以下对应的接口信息,复制到YesDev的接口文档,包括:
接口路径
接口请求方式
接口功能描述
接口公共参数(在YesDev支持公共配置)
接口输入参数(支持 JSON 快速识别和提取)
接口响应结果/参数(支持 JSON 快速识别和提取)
接口响应示例
这里不需要技术,但需要一点点耐心进行复制粘贴的表单输入和编辑。
比较赞的是,接口参数和接口结果,支持 JSON 的识别和自动提取,可以节省很多编辑时间。例如复制:
自动识别如下:
如果有公共参数,可以在接口项目进行统一的配置。
平均操作下来,每个API接口,不需要什么技术,大概花3分钟就可以手动完成一个API接口的复制模仿。7个接口,大概是21分钟。
API接口文档管理
通过“复制-粘贴”,以及表单提交,和在线编辑,就可以对待复制的7个API接口进行接口文档的管理。
管理界面的效果如下:
分享API接口文档
前台的在线API接口文档浏览效果如下,这是接口首页和接口列表页。你可以分享给你的团队、客户和开发者。可以设置访问密码或仅限内部查看,也可以公开访问。
抖店API接口模仿示例 - 在线接口文档
https://www.yesdev.cn/apidocs-home-44.html
查看具体的API接口文档:
抖店API接口模仿示例 / 抖店 / 店铺API / 获取店铺的已授权品牌列表 https://www.yesdev.cn/apidocs-detail-70.html
截图效果:
通过在线接口文档,开发者可以查看完整的API接口文档,以及进行在线测试,查看接口返回示例等信息。
生成并下载API接口代码
在YesDev - 工作台 - 接口文档 - 选中接口项目 - 生成API源代码,然后点击下击把接口源代码保存到本地。
保存到本地并解压后,会得到用PHP编写的API接口的源代码。例如:
独立部署、二次开发、和发布上线你的API接口
如果需要运行上面的PHP接口代码,你可以使用PhalApi开源接口框架。
参考开源框架官网:https://www.phalapi.net/,一键安装后把下载的压缩包上传并解压到根目录。
新增一个接口命名空间,执行:composer dumpautoload 。
推荐使用接口大师,支持可视化安装。
使用此方式,也是解压到根目录。上传解压后,修改 ./composer.json 文件,添加新的接口命名空间。
解压后会得到类似这样的代码文件:
[src]$ tree ./N45
./N45
├── Api
│ └── C46.php
└── Common
└── Api.php
执行composer更新操作:
[phalapi-pro]$ composer dumpautoload
Generating autoload files
Generated autoload files
运行后的接口列表:
进入到具体的API接口文档。
如果需要对API的PHP源代码进行二次修改,可以基于生成的代码进行重新修改和封装,整合你自己需要的业务和逻辑。
API接口自动化测试
如果你对API接口白盒的单元测试感兴趣,对接口项目质量感兴趣,可以了解自动生成API接口测试代码,和一键运行自动化测试。
自动生成单元测试的脚本和运行示例,具体参考文档《phalapi-buildtest命令》:
http://docs.phalapi.net/#/v2.0/shell?id=phalapi-buildtest%e5%91%bd%e4%bb%a4
一键运行自动化测试,共148个测试用例,共347个断言,全方位保证API接口的质量和稳定性,以及发布质量。
开放API接口
以下功能,都是接口大师自动根据代码实时的控制,不需要开发,直接使用,就能快速开放你的API接口。
登录接口大师的管理后台:
修改配置文件 ./config/app.php,把原来的:
// 开放接口的命名空间,配置后可提供接口权限分配,可配置多个
'open_api_namespaces' => array('App'),
添加新的接口命名空间 N45,改为:
// 开放接口的命名空间,配置后可提供接口权限分配,可配置多个
'open_api_namespaces' => array('App', 'N45'),
进入管理后台后,刷新页面,就可以对本次新增的API接口进行权限分配,分配给你的开发者、应用、或某一类角色。
除了可以看到接口的流量统计和监控外,还有很多关于账号管理、应用管理等功能。
2021的1024程序员节日,解锁开发API接口的新技能
API接口的开发,是一整套的工作。
传统的方式是:手动编写API接口代码,手动编写API接口文档,手动进行API接口的调试。
现代的方式是:手动编写API接口代码,自动生成API接口文档,手动进行API接口的调试。
更高效的方式是:基于YesDev+接口大师这两个工具,实现:自动生成API接口代码、自动生成API接口文档、自动进行API接口测试。
套用一句话:“我们不生产API接口,我们只做API接口的搬运工。”