快速搭建你的api数据交易平台-图文开发教程

2022-05-28 19:15:09 浏览数 (3)

项目背景

如果你需要开发搭建自己的api数据交易平台,并且能在平台上面进行对客户管理、接口管理、套餐管理、账单管理、充值管理,那么下面将来介绍如何使用接口大师这个框架快速进行开发。

安装

PhalApi专业版的运行环境要求如下:

  • 操作系统:Windows/Linux/Mac/Ubuntu/CentOS等
  • 开发语言:PHP 7 及以上版本,推荐使用PHP 7.3
  • 数据库:MySQL 5.5 及以上版本
  • Web服务器:Nginx/Apache/IIS
  • 正式服务器配置最低配置:CPU 1核 / 内存 2G / 硬盘空间40G / 带宽1M

官方推荐使用:CentOS 7 PHP 7 MySQL 5.6 Nginx

安装大概只需要几分钟,可以安装在Windows服务器、Mac、Linux服务器、虚拟机、Docker等,可以使用宝塔、IIS、Nginx、Apache等软件。上传到服务器,解压并配置好域名后。访问首页,可以看到并点击进入【首次使用,请先安装】。

随后进入安装向导界面。

填写数据库账号密码,以及管理员的账号密码,然后开始安装。

安装成功后,就可以开始进行二次开发。

系统项目和源代码结构

接口大师的系统项目主要分为5个子系统:平台展示官网、管理后台、开放平台、OpenAPI及在线接口文档、技术开发文档。

其中,源代码分为:PHP源代码一套、两套前端Vue/Javascript源代码、还有PHPUnit单元测试源代码。

如果是开发API接口,可以使用PHP编程语言进行开发(请放心,对于未使用PHP的技术人员,PHP是一门能快速上手的编程语言,并且接口大师已经把API接口的开发难度降低了近80%以上,同时比自己从零搭建平台可以节省整个项目大概30 天以上的项目周期)。

接口大师基于 PhalApi 开源接口框架,所以它的目录结构和开源版类似。PHP的接口源代码主要在src目录下。

PhalApi Pro版的目录结构如下,

代码语言:javascript复制
./
├── README.md # 简介
├── bin # 脚本目录
├── config # 配置目录
│   ├── app.php # 应用配置
│   ├── dbs.php # 数据库配置
│   ├── di.php # 依赖服务配置
│   └── sys.php #系统配置
├── data # 数据库
│   └── phalapi_pro.sql # 数据库安装时的文件
├── language # 翻译包
├── pro_admin # 管理后台的前端源代码,基于iview-admin
├── pro_platform # 开放平台的前端源代码,基于iview-admin
├── public # 对外访问的目录
│   ├── admin # 管理后台访问入口(相当于pro_admin打包构建后的dist目录)
│   ├── api # 接口访问入口(内分前台API和后台API)
│   ├── docs # 离线生成的HTML接口文档
│   ├── docs.php # 在线版接口文档访问入口
│   ├── index.php
│   ├── init.php # 全局初始化文件
│   ├── install # 安装向导(成功安装后建议删除此目录)
│   ├── platform # 开放平台访问入口(相当于pro_platform打包构建后的dist目录)
│   ├── static # 静态资源
│   ├── uploads # 上传目录(需要有写入权限)
│   └── wiki # 技术文档
├── runtime # 运行目录
│   ├── _install.lock # 安装锁定文件
│   ├── cache # 文件缓存
│   └── log # 文件日志
├── sdk # SDK包
├── src # 项目源代码,非常重要
│   ├── admin # 后台接口源代码(遵循ADM模式)
│   ├── app # 开放平台接口源代码(遵循ADM模式)
│   ├── base # 基础包源代码(放置底层公共的代码,不对外直接提供接口,即不提供Api层)
│   ├── platform # 开放平台接口源代码(遵循ADM模式)
│   ├── task # 计划任务接口源代码(遵循ADM模式)
│   └── view # 页面模板目录(如接口文档)
├── tests # 单元测试
└── vendor # composer包,不需要手动修改,通过composer install/update可进行安装和更新

接口划分如下:

其中,App开放接口,这部分就是你给你的客户提供的接口,用来放置你的api数据服务接口。最后实时更新的在线接口文档(自动生成,不需要开发者人工维护),类似如下:

连接你的数据库

大概熟悉系统的源代码和代码目录结构后,我们还需要做一个准备工作,就是连接你原来的数据库,即将要开放数据服务的数据库。

目前,接口大师支持MySQL、MS SQL、PostgreSQL、Oracle 等数据库。

为此,你需要修改数据库配置文件./config/db_plus.php,修改里面的数据库连接配置。例如:

代码语言:javascript复制
    'servers' => array(
        'db_master' => array(                       // 服务器标记
            'type'      => 'mysql',                 // TODO: 数据库类型,暂时只支持:mysql, sqlserver
            'host'      => '127.0.0.1',             // TODO: 数据库域名
            'name'      => 'phalapi_pro',           // TODO: 数据库名字
            'user'      => 'root',                  // TODO: 数据库用户名
            'password'  => '',                        // TODO: 数据库密码
            'port'      => 3306,                    // 数据库端口
            'charset'   => 'utf8mb4',                  // 数据库字符集 utf8mb4或utf8
            'pdo_attr_string'   => false,           // 数据库查询结果统一使用字符串,true是,false否
            'driver_options' => array(              // PDO初始化时的连接选项配置
                // 若需要更多配置,请参考官方文档:https://www.php.net/manual/zh/pdo.constants.php
            ),
        ),
    ),

你也可以使用.env 文件进行环境变量的配置,再替换到上面的数据库配置文件。

修改DI注册文件./config/di.php,去掉以下代码的注释,注册并开启$di->notorm_plus服务。

代码语言:javascript复制
// 连接其他数据库(或项目原有的数据库,需要时去掉注释)
// $di->notorm_plus = new NotORMDatabase($di->config->get('dbs_plus'), $di->config->get('sys.notorm_debug'));

在完成前面配置后,最后一步,便可以开始开发你的业务逻辑,连接或操作其他数据库。此时,新加的Model子类,如果是操作新增的数据库,则需要继承于BaseModelPlusBase基类。例如:

代码语言:javascript复制
<?php
namespace AppModelPlus;

use BaseModelPlusBase;

class Comment extends PlusBase {
    // 实现具体的数据库操作
}

这样,就可以连接和使用你的数据库表,进行API接口的开发和测试了。

开发并上架你的数据API

接口大师的一大开发特色,就是可以通过管理后台的界面,进行API低代码的在线开发。

先登录管理后台:

进入管理后台-接口管理-可视化接口设计-添加接口。

比如开放一个根据植物名称查询植物档案的接口,可以依次填写表单,把接口的标题、功能、需要的接口参数、接口返回字段、接口请求示例等写上。接口设计类型可以选择:普通接口API。然后【生成代码】。确认没问题后,可以【保存并发布】。发布后仍然可以继续修改和开发。

发布接口后,你就会看到类似以下的在线接口文档。具备在线接口测试等功能。非常方便。

设置API数据套餐和费用

有了业务数据,也有了API接口,下一步就是为我们提供的API数据接口设置费用和套餐。

进入管理后台-服务大厅-接口流量套餐-添加套餐。

类型选择:付费购买。

套餐名称:可以自己填写。

接口服务:选择刚才开发新增的API接口。

接口流量、套餐价格、有效时间:自己进行资费的配置。

配置套餐成功后,可以在后台看到套餐列表。

开发者在线购买和使用

当API接口配置套餐后,下一步,你的客户就可以在前台进行查看和购买。

对于需要付费才能使用的接口,接口列表会有【付费】标签提示。

进入到在线接口文档详情页,可以看到具体的接口流量套餐。

点击套餐,可以进行在线购买。支持支付宝等多种支付方式。

开发者购买后,可以在开放平台-服务大厅-我的套餐,查看我购买的套餐和流量消耗情况。

也可以在开放平台看到其他的统计数据,例如流量统计等。

后台流量统计和账单管理

最后,回到管理后台,可以看到全服的接口流量统计,每个应用、每个客户不同的统计数据。

也可以在后台看到订单、套餐和账单等数据。

当然,你也可以配置支付宝等在线支付的方式,不需要额外的开发。

还可以管理客户账号:

分配和管理接口权限:

基本上若搭建一个api数据交易平台,你只需要开发核心的API接口业务逻辑,剩下的接口大师都已经自动帮你完成,包括但不限于:自动生成接口文档(还支持离线文档导出)、接口权限管理、接口套餐管理、接口流量统计、接口日记、接口安全等。同时,可以节省30天 以上的项目周期,可以快速上线,为你的客户提供api数据服务。

0 人点赞