下面我们以百度云的开放平台做一个应用开发示例,来讲解如何构建一个应用。从这篇示例中我们将了解:
如何设置Session Auth授权
如何设置一个执行动作
1 应用案例介绍与功能说明
作为演示示例,我们将使用百度云的OCR图片转文字接口,构建一个 “百度云图片转文字”应用,并添加图片转文字执行动作,允许流程中使用此应用将图片网址中的图片内容包含的文字提取出来用于后续步骤使用。
百度云OCR产品介绍:https://cloud.baidu.com/product/ocr_general
百度云OCR接口文档:https://cloud.baidu.com/doc/OCR/s/zk3h7xz52
百度云OCR鉴权认证机制文档:https://ai.baidu.com/ai-doc/REFERENCE/Ck3dwjhhu
2 创建应用并添加应用信息
在 open.jijyun.cn 登录您的账号 (目前内测期间,您需要先在 https://jijyun.cn/open.html 提交申请)
进入后,点击”创建应用” 按钮,填写应用信息并上传图标:
点击保存按钮
3 授权方式设置
3.1 选择接口授权方式
从百度云OCR鉴权认证机制文档:https://ai.baidu.com/ai-doc/REFERENCE/Ck3dwjhhu
中看到其是使用API Key和 Secrect换取Access_token的方式进行授权。因此我们在授权方式中选择 “Session Auth"
点击保存。
3.2 配置授权字段
从文档中可以看到 百度云的授权需要用户填写自己的API Key 和 Secret Key,因此需要添加这两个字段。
点击设置授权字段步骤中的 ”添加字段”按钮,添加第一个需要用户输入的字段“API Key"
字段名称:用户在前端可以看到的名称, 本示例中为API Key
字段key: 此字段对应在接口调用时的Key,本示例中为 client_id
是否必填:如果用户必须填写此字段,则勾选此选项
字段类型:目前在授权环节支持的字段类型有三种:文本,密码(前端以密码形式展现),和 下拉。如果是下拉类型,则需要在页面最后的选项中配置选项的字段key与字段值。本示例中为文本
字段说明:用于在前端展现给用户,一般用于说明此字段在哪里获取,或者填写时应该注意什么。
默认字段值:可以设置在字段中默认展现一个字段值,用户可以直接使用此字段值或者删除此字段值后重新填写。
下拉选项:仅字段类型为”下拉”类型时需要设置
保存后,返回授权设置页面我们可以看到刚才配置的字段已经展现在授权字段设置中:
我们使用同样的方式,将另外一个需要用户填写的字段:Secret Key也设置好:
3.3 设置Token获取接口
在这个步骤我们设置 Token 的获取接口信息。根据百度云的授权文档:https://ai.baidu.com/ai-doc/REFERENCE/Ck3dwjhhu
接口需要使用Post的方式,请求:https://aip.baidubce.com/oauth/2.0/token
点开更多选项:可以看到需要写一个固定的参数:grant_type,我们在这里添加一个grant_type字段并设置接口文档要求的固定字段值:client_credentials
其余参数client_id,client_secret 已经在第一步中填写过,可以点击自动填充填写。
我们将参数配置在设置授权请求接口步骤
接着来看Access Token过期时间key,这个参数的作用是判断上一步中申请的token是否过期,如果添加这个参数,在token过期后集简云将自动刷新token,如果token有过期时间,建议填写。我们参考百度云OCR鉴权认证机制文档:https://ai.baidu.com/ai-doc/REFERENCE/Ck3dwjhhu,获得参数参数 express_in ,填写到对应位置。
点击“保存并继续”按钮。
3.4 设置授权请求接口与帐号名称标识字段
这个步骤我们设置授权请求接口,需要参考百度云OCR接口文档:https://cloud.baidu.com/doc/OCR/s/zk3h7xz52
接口需要使用Post的方式,请求URL: https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic
点击更多选项,根据文档继续添加请求参数,url请求参数填写 access_token,对应值填写{{auth_data.access_token}},说明:认证字段{{ auth_data.xxx }} , 其中xxx部分为您设置的字段Key
根据文档继续添加Header,我们这里预设的Header的参数和文档中的参数一致,不做调整。
body中的放置参数,如下:
这里的参数url参考文档https://cloud.baidu.com/doc/OCR/s/zk3h7xz52中的必填参数,对应值也参考文档,是永久不会失效的图片链接,保证这个接口不会失效。
如果返回参数中有可用于账号名称展现的字段,可以在”账号名称标识”中配置,一般为邮件,账号名称等参数。
点击“保存并继续”按钮
3.5 账号授权测试
这个步骤类似于用户在使用集简云添加账号时的操作,用于校验授权验证接口是否可以正常使用。
点击下拉菜单,点击添加账号按钮,点击后出现添加账号弹窗,里面是设置的需要用户填写的授权字段(在3.1中设置的)
请您填写有效的授权信息后点击下一步。
在下拉列表中选择刚才添加的应用账号,然后点击授权测试:
在接口返回中,您可以看到授权返回的参数信息是否正确。如果正确,点击“结束测试并继续”按钮完成授权设置。
4 触发动作/执行动作设置
配置完成授权设置后,我们开始配置触发和执行动作,一个应用至少应该包括一个触发动作或者一个执行动作,您可以根据自己的业务需要创建多个触发与执行动作。
在本示例中,我们在“百度云图片转文字” 添加一个执行动作:"提取图片中的文字内容”
对应接口文档:https://cloud.baidu.com/doc/OCR/s/zk3h7xz52
4.1 在”执行动设置”下点击”创建一个动作“
4.2 动作信息设置
动作设置中配置动作的基本信息,包含以下选项
动作名称:展现给用户看到的动作名称
动作Key:一个应用下每个动作的一个唯一ID,
动作描述:展现在动作名称下面,用户可以看到,相当于是对于动作功能的介绍。
动作是否可以见:分为可见和不可见,两个选项,一般为可见。不可见动作用于动作字段之间的调用,比如一个下拉选项需要通过接口调取可用选项,这时可用将查询选项设置为一个不可见动作,此动作尽用于动作之间的接口调用。
配置完成后,点击 ”下一步“ 按钮
4.3 动作字段设置
动作字段设置中配置需要用户在前端填写的字段信息,比如百度云这个示例中,根据接口文档https://cloud.baidu.com/doc/OCR/s/zk3h7xz52, 用户填写的字段包括:图片base64,图片URL, 识别语言类型等多个字段。
动作字段类型介绍动作字段类型介绍
动作字段类型有3种:
普通字段:也就是一般的一个字段key对应一个字段值的类型,在接口传参时会把字段key与字段值传入到接口中,如果有多个普通字段就会将多个字段key与其对应的多个字段值传入到接口。绝大部分接口使用这种类型。
动态字段:如果填写的字段key和字段值是不确定的,需要使用接口获取时选择这个类型,比如自定义表单内容,表单种的字段时用户自己配置的,需要调用接口获取,这时选择这种方式。
字段组:如果您需要将一个字段组传入接口,比如订单信息字段,里面包括一个订单key,订单key下包括订单价格,订单数量,订单折扣等等,在接口传参时需要将订单key连同订单key下面的,订单价格,订单数量,订单折扣一起出入到接口中,那么您应该选择这个动作字段类型。(有一个字段组下可以添加多个普通字段)
注意:您可以将多个不同的动作字段类型混合使用,比如一个执行动作的接口中需要 3个普通字段,1个动态字段,2个字段组,您可以配置多个字段和不同的字段类型在一个动作设置中。
根据百度云OCR的接口文档:https://cloud.baidu.com/doc/OCR/s/zk3h7xz52, 其输入的第一个字段为 image:
这个是一个普通字段,文本类型,我们点击添加“普通字段”选项添加配置此字段:
点击后我们将文档中的一个字段:image 添加到动作字段设置中:
字段设置中包括下列选项:
字段key: 用于接口传参的字段key
字段名称:展现在前端用户可见的字段名称
字段说明:展现在前端用户可见的说明
默认值字段值:如果需要展现一个默认值可以在这里设置,用户可以直接使用默认值或者删除默认值重新填写
字段类型:分为文本,多行文本,数值,浮点,和展现类型,每个类型的前端展现样式和接口传参格式会有不同,后续我们有专门的文章介绍字段类型。
是否为必填:如果勾选则用户必须填写此字段内容才能进行下一步
是否为动态字段:如果这个字段的变化后触发其他动作中字段列表变化,这里可以通过动态字段来完成。后续我们会有专门的文章介绍“动作字段”的使用方式。
是否有下拉选项: 如果是下拉字段的话,在这里配置下拉选项,这里分为固定下拉选项和动态下拉选项,如果是固定下拉选项将选项以json格式写入即可,包括 选项key,和选项label. 其中key是用于接口传参,label用于前端展现给用户
[
{
"key": "CHN_ENG",
"label": "中英文混合"
},
{
"key": "ENG",
"label": "英文"
},
{
"key": "JAP",
"label": "日文"
},
{
"key": "KOR",
"label": "韩文"
}
]
配置完成第一个字段image后,点击保存。
参照上述示例,我们将百度云OCR接口中的其他字段配置好:
配置完成后再右侧有预览样式,此演示与用户在集简云配置此动作时的样式一样。方便您进行检查。
4.4 动作接口参数设置
4.4.1 请求参数设置
点击动作配置中的 ”动作接口参数设置”标签,进入接口参数设置页面,在这个界面我们将配置调用接口时需要需要的参数。
根据百度云OCR文档:https://cloud.baidu.com/doc/OCR/s/zk3h7xz52
我们设置请求地址和方式:
根据文档,我们设置请求方式为POST 请求地址为:https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic
然后点击“更多选项”
会展开传入参数列表,在这里可以配置参数,header, body 等接口参数。
根据文档,在URL参数中需要输入 access_token,并使用接口授权中获取的参数。
我们在步骤 3.4 中请求参数返回中可以看到 返回内容中的token写在了”access_token” 这个字段内:
我们使用这个返回的字段key作为变量:
我们将文档中要求的参数:access_token写在请求参数中,后面插入授权变量,格式为 {{auth_data.授权接口返回内容中的字段key}}
3.4步骤中授权接口返回的内容中包含token的字段key为 “access_token" 因此,我们这里写入的变量为:{{auth_data.access_token}}
4.4.2 HTTP Header设置
配置完成 请求参数后,我们点击”HTTP Header"页签:
根据文档,我们添加header要求的内容:
Content-Type: application/x-www-form-urlencoded
4.4.3 请求Body设置
完成Header设置后,我们点击”请求body" 内容,根据文档,我们添加body请求内容:
前面为文档中要求请求的字段key,后面插入对应字段key中用户输入的变量,变量格式为:
{{input_data.动作字段设置中的字段key}}
4.4.4 额外选项
额外选项可以控制如果用户没有填写字段时,是否忽略此字段的传参,我们建议保持默认的开启状态。
开启状态下,如果用户没有填字段,则发送时会默认不传入这个字段到接口,如果不开启则会传空值。例如:
Key1, Key2两个字段,如果用户只填写了Key1,没有填写Key2。
开启状态下,只传Key1,不传Key2
关闭状态下,Key1和Key2都会传,未填写的Key2会传空值。
配置完成后点击“保存并继续”按钮
4.4.5 接口请求测试
在接口请求测试中,您可以测试接口是否可以正常请求并返回参数。
在账户选择栏选择账户,这里会调用我们在步骤3.3授权测试时添加的账户信息
填写要的请求参数,然后点击 ”执行动作测试“按钮, 点击后可以在”接口返回”中看到返回参数
在”HTTP"中可以看到请求发送的内容:
4.4.6 设置样本数据
在这个步骤您可以返回内容中字段Key对应的中文含有,和字段的解释说明,这里的配置将会展现在用户前端,便于用户理解接口返回内容。
样式:
配置后点击保存
4.4.7 大功告成,开始使用吧
配置完成并保存后,您可以在您企业的集简云账户下直接使用,应用默认只在您的企业下可见。
您可以使用这个应用配置流程。
5 全网发布
如果您希望集简云的全部企业都可以使用您的应用,您需要进行全网发布。
请在开放平台菜单中点击:“应用管理/应用发布”菜单,里面有我们的发布流程和联系方式,请扫描二维码与我们的员工沟通发布适用,我们的市场运营同事也会配合做宣传活动。