龙空技术网

零代码/低代码,把内部接口变成OpenAPI开放接口的妙招

黄禅宗dogstar 827

前言:

目前大家对“自动生成php代码”都比较珍视,同学们都需要了解一些“自动生成php代码”的相关文章。那么小编同时在网摘上网罗了一些有关“自动生成php代码””的相关知识,希望各位老铁们能喜欢,你们一起来学习一下吧!

把内部接口快速变成开放接口的妙招

如果原来已经有一批内部的API接口,现在需要调整成对外开放的API接口,有没快速的办法,能即刻实现?最好是当天就能部署上线,对外开放使用的解决方案?

如果需要把内部接口变成开放接口,至少需要解决以下问题:

为外部开发者提供注册的页面开放指定的API接口权限给外部开发者提供在线接口文档和内部API接口进行对接使用新的对外域名,例如:open.xxx.com

选择合适的工具和解决方案,能快速实现你想要的效果,并且最快当天就能上线。

零代码/低代码的API解决方案

我们先来看一个例子。

假设原来使用Java实现的某个内部接口是:Hello Wolrd示例接口,路径是:/api/Hello/World。现在需要转成外部API接口。下面介绍零代码或低代码的解决方案。

首先,进入接口大师的管理后台-接口管理-可视化接口设计-添加接口。然后在接口设计类型选择【接口对接API】,随后在表单中依次填写接口服务名称、接口模块、接口标题、接口参数、接口返回示例等,这些都是新API接口对外展示的内容。

关键的一步,是点击页面上的【生成代码】,系统会自动根据你填写的表单,生成和内部接口对接的PHP代码。

我们把生成的代码复制出来,类似:

<?phpnamespace App\Api;use App\Common\Api;// use App\Domain\JavaHello as JavaHelloDomain;/** * 内部Java示例接口 */class JavaHello extends Api {    /**     * 接口参数规则配置     */    public function getRules() {        $rules = parent::getRules();        $curRules = array(            'World' => array(                                'city' => array (                'name' => 'city',                'type' => 'string',                'require' => true,              ),            ),        );        return array_merge($rules, $curRules);    }    /**     * 内部Java接口对接示例     * @desc 内部Java接口对接示例     *      */     public function World() {        // 接口参数获取        $city = $this->city; // 参数                // 结果返回        $rs =array();         // 获取用户ID,未登录时异常返回        // $uid = $this->tryToGetUid();        // 获取app_key,未指定时异常返回        // $appKey = $this->tryToGetAppKey();        // TODO: 实现你的业务逻辑……        // $domain = new JavaHelloDomain();        // API接口对接(内部接口,或上游接口)        $apiParams = array(            'city' => $city, //         );        // TODO: 接口地址,请更换成你需要请求的接口地址        $apiUrl = ';;        // POST请求        $curl = new \PhalApi\CUrl();        $curlRs = $curl->post($apiUrl, $apiParams);        // GET请求        // $curlRs = $curl->get($apiUrl . (strpos($apiUrl, '?') ? '&' : '?') . http_build_query($apiParams));        $rs['backend_data_raw'] = $curlRs;        $rs['backend_data'] = json_decode($curlRs, true);        return $rs;    }    // 绑定数据库模型    protected function getDataModel() {        return new \App\Model\JavaHello();    }}

你只需要根据上面生成的代码模板,把内部API接口的路径,填写到$apiUrl这个变量即可。你还可以补充和添加额外的请求参数。

下一步,保存和生成接口代码,你可以在在线接口文档看到刚刚生成的OpenAPI接口。

自动生成新的接口文档如下:

通过在线测试,可以直接调用此API接口,例如返回以下数据:

接口大师v3.10.0版本更新

接口大师,是一套研发、管理和开放API接口的软件源代码和解决方案。

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

PhalApi专业版 3.10.0 (2022-04)

1、注册时支持同时创建默认应用,可配置2、接口生成支持API对接模式3、支持后台套餐的搜索账号和接口4、后台-订单管理,支持订单搜索和订单经营统计5、管理后台-工单列表,优化显示6、token支持唯一性的判断和配置7、修复接口编辑,保存并发布时使用最新手工编写的代码8、一些已知的bugfixed和细节优化如何升级到接口大师v3.10.0?

在联系我们,获取到最新版v3.10.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.10.0.sql 数据库文件变更,并执行。

5、配置更新,对比更新 ./src/config/app.php文件,主要添加了enable_app_and_user_unique_token等配置

标签: #自动生成php代码 #java调php接口