1. 概述
1.1 版本
FineDataLink版本 | 功能变动 |
---|---|
4.0.20.1 | - |
4.2.9.1 | 应用路径前缀默认为service,去掉 publish |
4.2.9.4 | 应用中不支持设置访问频率,在「规则管理>流控规则」中设置 新增「查看规则」按钮 |
点击展开更多 | ||||||||||||||||
|
1.2 应用场景
1)用户希望能对多个 API 进行分组管控,在相同分组中,能统一设置认证方式、授权有效期。
2)运维 API 时,能通过分组维度,查看该分组下 API 信息、调用记录。
1.3 功能简介
1)FineDataLink 支持在创建 API 时和创建后绑定其至对应的应用中,可在应用中为多个 API 统一设置认证方式、授权有效期。如下图所示:
设置认证方式可保证发布的 API 接口在被外部系统调用时更安全。
2)多个 API 绑定相同应用,相当于让多个 API 拥有了被访问的统一父路径。
数据服务发布的 API 访问地址为:FDL服务器地址+/service/应用ID+APIPath
API 地址示例:https://demo.finedatalink.com/service/673d189b-ce05-4029-912a-2e68a72da6c3/wendang
应用ID | APIPath |
---|---|
每个应用有唯一的 ID(AppId,用于唯一标识应用)和认证信息(AppCode 认证码) 4.2.6.2 及之后版本,支持修改应用路径;4.2.9.1 及之后版本,应用路径前缀默认为service,去掉 publish | ![]() |
3)应用与 API 是多对多的对应关系,同一个 API 可以存在于多个应用中;同一个应用中也可以有多个 API。
4)API 的上下线状态与绑定状态互不影响,如果应用绑定了一个下线的 API,调用该 API 时,会提示 API 未上线。
2. 用户需知
1)由于当前发布 API 的 Token-APPCode 是直接在请求中传递的,为增强安全性,建议用户使用 HTTPS 部署 FineDataLink。
非超级管理员用户想要使用该功能需要为用户分配 数据服务管理权限、数据服务应用管理权限
2)数据服务发布的 API 若想被调用成功,必须绑定应用。绑定应用方式:
方式一:参考本文内容,新建应用/修改应用,绑定已设置好的 API 。
方式二:数据服务中创建 API 时,在 API信息 步骤中,绑定已有应用。
3)4.2.9.4 及之后版本,无法在应用中设置 API 的访问频率,需要到「规则管理>流控规则」中设置;4.2.9.4 之前版本,建议查看历史文档:历史文档
3. 创建应用、绑定API
3.1 新建应用
点击「数据服务>应用列表」,在有权限的文件夹中新建应用。如下图所示:
应用名称:必填,默认为空。
应用描述:定义应用的详细描述,可为空。
3.2 设置应用
可设置应用路径、应用认证方式、绑定API。如下图所示:
3.2.1 应用路径
4.2.6.2 之前版本:
新建应用时,提示应用ID将在应用保存后自动生成;修改应用时,可以查看当前生效的应用ID。
4.2.6.2 及之后版本:
支持修改应用ID;支持修改应用路径前缀。
4.2.9.1 及之后版本:
应用路径前缀默认为 service,去掉 publish。
应用路径 | 说明 |
---|---|
应用ID | 支持修改 不可为空;不可重复;仅支持字母、数字、下划线(_)、连接符(-);不支持以/开头或结尾 |
应用路径前缀 | 管理员可在「全局设置」中修改 修改后将影响所有应用路径及其绑定服务的API路径,重启工程后生效 |
3.2.2 应用认证方式
支持四种认证方式:无认证、AppCode、摘要签名、简道云推送认证。
注:若在应用中设置了应用认证方式 ,则应用下的所有 API 都需要使用该鉴权方式。
无认证:
调用 API 时不需要传入认证信息。
AppCode:
1)选择 AppCode 认证方式后,将展示 AppCode 值。
2)支持点击「重置」按钮重置 AppCode,点击「重置」按钮后,将自动检查当前用户是否有权管理应用下所有的 API ,如果无权限则报错提示存在已绑定但是无权限的 API,需要有应用下所有 API 的权限才能重置 AppCode。
权限检查成功后,提示 AppCode 将在应用保存后重新生成,保存后生效,编辑页面未保存则不做重置。
3)调用 API 时:
需要在请求头中指定 Authorization 请求头的值为:AppCode + 空格 + APPCode值。
AppCode 值示例:AppCode 35f3c79e-08e2-4f6f-8eed-60f40f5ca4db
示例参考:
使用数据服务发布的API(POST application/json请求)
使用数据服务发布的API(POST x-www-form-urlencoded请求)
摘要签名:
当应用认证配置为「摘要签名」时,下方会显示 AppSecret ,摘要签名认证方式说明详情参见:摘要签名认证方式
简道云推送认证:
数据接收-简道云表单推送 场景中,若简道云表单设置 数据推送 时生成了 Secret。如下图所示:
则需要选择简道云推送认证,Secret 需要与简道云表单数据推送生成的 Secret 一致。
3.2.3 绑定 API
用户只能查看、绑定、管理自己有权限的 API。
数据服务发布的 API 若想调用成功,必须绑定应用。
应用与 API 是多对多的对应关系,同一个 API 可以存在于多个应用中;同一个应用中也可以有多个 API。
单个 API 修改授权有效期、解绑:
设置项 | 说明 |
---|---|
修改授权有效期 | 指定授权有效期步骤:
|
解绑 | 点击「解绑」按钮,该 API 即可不绑定此应用 |
批量修改授权有效期、批量解绑:
勾选已绑定的 API,点击「批量设置」,可以对 API 的认证方式授权有效期进行设置。如下图所示:
3.3 查看应用&查看规则
3.3.1 查看应用
应用设置完成保存后,可以查看到当前应用的认证方式是否启用、认证、应用ID、已经绑定的 API 等信息。如下图所示:
基本信息说明:
项目 | 说明 |
---|---|
应用路径 | 展示应用路径 |
应用名称 | 展示应用名称 |
描述 | 展示应用的详细描述 |
创建人 | 应用的创建人 |
创建时间 | 应用的创建时间 |
认证方式 | 展示认证方式
|
已绑定API | 展示应用下已绑定的 API 列表 包含 API 名称、API 状态、API 路径、API 目录、API 描述、API 授权有效期 支持直接复制 API 路径 |
3.3.2 查看规则
点击「查看规则」按钮,可查看该应用绑定的所有规则。如下图所示:
若应用未绑定任何「报警规则」时,不显示「报警规则」Tab。
点击规则名称,可跳转到规则详情页。
3.4 特殊情况说明
场景 | 说明 |
---|---|
用户没有应用权限,但有某个 API 管理权限 | 用户可以正常编辑有权限的 API ,或者在有权限的文件夹下新增 API,但是无法将 API 绑定给无权限的应用 |
用户没有特定 API 管理权限,但是有特定应用管理权限 | 用户可以正常编辑有权限的应用,或者在有权限的文件夹下新增应用,但是无法将应用与无权限的 API 绑定 |
平台内有 a,b,c,d 四个 API 和「应用1」一个应用 A 用户拥有 a,b 两个 API 的权限和应用1权限 B 用户拥有 a,b,c 三个 API 的权限和应用1权限 管理员将 a,b,c,d 四个 API 绑定到了应用 1 | A在应用1中,可以看到和编辑a,b;可以编辑a,b的绑定情况;无法重置应用1的AppCode;无法删除应用1 B在应用1中,可以看到和编辑a,b,c;可以编辑a,b,c的绑定情况;无法重置应用1的AppCode;无法删除应用1 如果想要删除应用1,需要有所有API的管理权限,再进行操作 如果想要重置应用1的AppCode,需要拥有应用下所有已绑定的API的管理权限 |
4. 管理应用
应用列表中仅展示当前用户有管理权限的文件夹、应用。
1)应用可在文件夹中进行管理。如下图所示:
2)可对应用做重命名、移动、删除操作。如下图所示:
当应用绑定着当前用户无管理权限的 API ,即使有应用管理权限,也不允许删除应用,删除时提示告知无法删除。
当应用绑定的 API 当前用户都有管理权限,且用户有应用管理权限,允许其删除应用。
3)支持编辑应用。如下图所示:
进入应用编辑页面,点击左上角「编辑」按钮可修改应用的名称和描述。如下图所示:
5. 导出 API 文档
4.1.6.4 及之后版本,支持导出 API 文档。
5.1 应用场景
API 开发完成后,需要将 API 说明文档提供给调用者,供调用者查看。
5.2 功能说明
如果用户有该应用的管理权限,可以点击「导出API文档」按钮,在跳出的弹窗中可修改工程地址,点击「确定」按钮后导出该应用下所有上线API的说明文档,文档格式为 Word 。如下图所示:
在线文档包含的内容如下:
展示项 | 说明 | ||
---|---|---|---|
目录树 | 展示目录结构 | ||
应用信息 | 表格形式展示应用信息:
| ||
API信息 | 展示该应用下所有上线API的信息
4.2.8.4 及之后版本,新增 JSONPath 列(展示每个参数的 JSONPath)、展示字段注释
| ||
错误码汇总 | 错误码信息 错误返回内容 |