首页 文章详情

接口大师v3.13更新:支持一键导入swagger,即刻开放内部API接口

dogstar | 512 2022-07-12 17:02 0 0 0
UniSMS (合一短信)

开放内部API接口更省心省力省时间的解决方案

基于已有的内部API接口,或者现有的数据库,当需要给外部开放和提供API接口时,有哪些工具或解决方案,能快速实现企业自建API接口开放平台的需求?

如果打算从零开始,自建接口开放平台,无疑将会面临成本投入大、项目周期长、上线后对接不稳定、系统产品功能考虑不周等痛苦和问题。

于是,选择和使用符合产品需求、技术选型吻合的工具和解决方案,将会让你在接口平台搭建上事半功倍。

接口大师(PhalApi-Pro),就是这样一套研发、管理和开放API接口的软件源代码和解决方案,它基于PhalApi开源接口框架+Vue前后端分离,可用于快速搭建各类企业级接口平台。


接口大师的三大特色

接口大师,在开放平台的产品设计上,有完整的接口生态能力。


接口大师,极大降低了API接口开发的难度和时间,让技术人员可以更专注于API接口本身的业务开发。除此之外,它还提供了接口代码在线生成器、支持swagger导入、自动生成在线接口文档、支持一键部署安排(包括Windows/Linux/Docker/国产系统等)。

经过多年的经验总结,企业开放接口的内部驱动力来分析,主要来自三个方面:

  • 第一,基于企业内部已有的API接口,进行选择性对外开放;

  • 第二,基于企业内部已有的数据库业务数据,进行部分数据的共享和自动化对接;

  • 第三,基于新接口功能的开放、提供和服务。

结合这三大内部驱动力和开放APi接口最常用的开发模式,接口大师提供了三种快速生成、开发和开放API接口的特色能力。

  • 特色1:一键导入swagger,即刻开放内部APi接口

  • 特色2:数据库动态配置,轻松开放数据API接口

  • 特色3:普通API接口源代码在线生成器

特色1:一键导入swagger,即刻开放内部APi接口

在API接口管理后台,可以一键导入swaager.json文件,然后选择性地开放你的API接口。

导入前的swagger接口列表:


上传导入时,勾选需要开放的swagger接口:


导入后,对API接口的二次开发和调整:


前台开放接口文档的浏览效果,类似如下:


外部开发者注册后,可以查看自己已经授权的API接口,并根据接口文档进行接口的调用。


最后,接口管理后台可以查看和统计开发者的接口流量使用情况,对接口进行权限分配、配额设置、IP白名单设置、应用有效日期、接口流量包、接口流量统计等进行管理。


例如,接口管理后台的首页统计。


特色2:数据库动态配置,轻松开放数据API接口

接口大师,支持:MySQL、Sql Server、Oracle、PostgreSQL等常用数据库。

如果需要快速开放你内部的数据库数据给外部开发者,可以先动态配置好你的数据库,然后再快速生成数据库的API开放接口。全程操作支持界面化操作,以及低代码的开发方式,不需要专业的后端开发工程师,根据教程配置和使用,即可实现编程。

首先,添加你的数据库配置。进入数据库配置管理,


添加新数据库配置,根据数据库配置表单填写,并测试数据库连接是否正常。


配置好你的数据库后,检查你的数据库是否正确。


然后,进入接口管理,并添加新接口。在接口设计类型时,选择【生成数据库表接口API】,然后选择你的数据库,以及对应的数据库表。根据提示,补充其他接口的开放信息,例如接口的参数、接口的请求方式等。


确认没问题后,点击生成代码,保存草稿。


可以看到,系统自动生成的接口PHP源代码如下:

<?phpnamespace App\Api;use App\Common\DataApi as Api;// use App\Domain\ClassNameAds as ClassNameAdsDomain;/**
* 请输入接口模块Ads
*/
class ClassNameAds extends Api { /**
* 接口参数规则配置
*/

public function getRules() {
$rules = parent::getRules();
$curRules = array( 'ActionNameAds' => array( //
),
); return array_merge($rules, $curRules);
} /**
* 请输入interface_title
* @desc 请输入接口功能描述
* @version v1.0
*
*/

public function ActionNameAds() { // 接口参数获取
// 接口参数获取
// 结果返回
$rs = array();

// 获取用户ID,未登录时异常返回
// $uid = $this->tryToGetUid();

// 获取app_key,未指定时异常返回
// $appKey = $this->tryToGetAppKey();

// TODO: 实现你的业务逻辑……
// $domain = new ClassNameAdsDomain();

// 动态查询参数
$whereParams = array(
); // 获取数据库的表实例,可以切换你的数据库和其他表
$table = \PhalApi\DI()->db_yesdev_db_dev->pp_ads;
// 根据SQL查询数据库,需要带表前缀
// 更多数据库操作请见:http://docs.phalapi.net/#/v2.0/database-usage
$sql = 'SELECT * FROM pp_ads WHERE 1=1 LIMIT 0, 100';
$rows = $table->queryAll($sql, $whereParams);
// 对数据的加工处理
foreach ($rows as &$itRef) { // 对每一行数据的处理……
// $itRef['id'] = $itRef['id'];
} // 返回数据
$rs['rows'] = $rows;

return $rs;

} // 绑定数据库模型
protected function getDataModel() { return new \App\Model\ClassNameAds();
}
}

你可以对上面的接口源代码进行调整和修改,也可以直接使用。核心是,可以修改以下代码片段,以便实现你的数据SQL查询逻辑。

        // 根据SQL查询数据库,需要带表前缀
// 更多数据库操作请见:http://docs.phalapi.net/#/v2.0/database-usage
$sql = 'SELECT * FROM pp_ads WHERE 1=1 LIMIT 0, 100';
$rows = $table->queryAll($sql, $whereParams);

接口数据的SQL查询和操作确认后,进行接口的发布。如果选择了CURD接口,系统会同时提供默认的增删改查接口。在接口列表你将可以看到类似以下的数据API接口。


进入到刚才新创建的数据API接口文档,可以查看接口文档,以及进行在线接口测试。


后续的接口使用、管理和前面类似,不再赘述。

特色3:普通API接口源代码在线生成器

最后,如果是需要开发和开放新的接口功能和接口服务,可以在接口源代码在线生成器中,选择普通API接口,并且进行在线接口编程。



如果需要进行源代码的接口快速开发,可以参考 PhalApi Pro 技术文档。


或者参考PhalApi开源接口框架(https://www.phalapi.net/)的开发文档。



接口大师 v3.13 版本发布与更新的内容

本次 v3.13.0 版本更新内容主要有:



PhalApi专业版 3.13.0 (2022-07)

  • 支持MySQL动态数据库源管理和配置、使用,DI数据库服务使用延时初始化,保证数据库连接性能

  • 完善管理后台的菜单权限配置

  • 开放平台接口权限状态同步与优化

  • 支持API接口版本@version配置和显示、以及请求方式的文档显示优化

  • 支持swaager批量导入,支持多个接口的勾选、覆盖导入和快速发布

  • 管理后台统计增加表格合计

  • api开发工具优化,生成数据API接口时可以选择数据库和数据库表

  • 一些已知的bugfixed和产品优化

  • 优化修复:

  • 1、生成数据接口Api时,支持驼峰类名与蛇形命名法的数据库表名关联

  • 2、低代码接口开发,文案调整,以及生成HTTP网关接口API时,微调生成的接口模板

  • 3、接口低代码开发,支持GET/POST方法设置

  • 4、接口套餐创建后,不可更改套餐类型

  • 5、支持Oracle数据库连接

如何升级到接口大师v3.13 新版本?

在获取到最新版v3.13.0源代码,源代码后,本次版本更新的主要内容有:

注意!升级前,请注意原有的代码备份!!

1、替换./public/platform目录,更新Platform开放平台的编译包代码(如果原来已经改动Platform源代码,需要合并源码后再编译打包更新,可以使用git的分支合并进行新版本的对比和升级)

2、替换./public/admin目录,更新Admin管理后台的编译包代码(如果原来已经改动Admin源代码,需要合并源码后再编译打包更新,可以使用git的分支合并进行新版本的对比和升级)

3、PHP源代码更新

对比并替换./src/base目录,对比并替换./src/admin目录,对比并替换./src/platform目录,对比并替换./public/api目录。可以使用git的分支合并进行新版本的对比和升级。

4、数据库更新

请见
./data/phalapi_pro_v3.13.0.sql 数据库文件变更,并执行。

5、composer包更新

执行composer包更新命令:composer udpate。


good-icon 0
favorite-icon 0
收藏
回复数量: 0
    暂无评论~~
    Ctrl+Enter