本文档内容是基于我个人对SPA的理解产生的,目的是帮助您了解SPA API触发器的开发方式,阅读时间约为30分钟。
本文档包含以下部分:
1.创建触发器
2.创建服务键值
3.使用Postman调用API进行测试
1.创建触发器
SPA的机器人自动化流程可以被三种方式启动,分别是手动点击本电脑上的小代理启动,定时启动,以及API Call启动,
这里我们来为流程创建一个API Call启动的trigger
进入触发器管理界面后,点击右上角的
添加触发器,再在第一步中选中我们要分配触发器的目标流程,这里选择的是
入门练习Tutorial 这个项目
第二步中选择API种类,在细节页面中修改
名称,
描述后,
执行 部分应当选择目标流程,如果多个流程嵌套运行的话则
应选择根流程
设置属性和值这里是要将当前项目和代理
匹配,如果有多个代理同时拥有属性/值,则新任务会随机分配到其中一个空闲的代理处,类似于一个资源池。
触发器创建好之后,可以看到一个
URL信息,保存下来
接下来去
控制塔-API密钥 处创建属于自己的API Key,这里可以创建多个API Key,每个Key都可以访问到触发器,但是后台会区分不同Key的访问,一般推荐为每个用户各分配一个Key,以区分调用者
填写Key名称,分配权限后,在审核界面确认,即可完成创建,
请注意,
新生成的API Key只能查看一遍,请在刚创建完的时候就保存好它
2.创建服务键值
BTP内各项服务(SPA是BTP提供的服务之一)提供的API
都是需要额外安全措施才能访问的,需要我们在BTP中控台为该服务创建服务实例Service Instance(这里实例的意思更像是开启一条外部访问的通道),并为不同用户创建Service Key,才可以访完成身份认证
我们来到BTP中控台(拥有BTP中控台是进入SPA中控台的前提条件,如果您不知道如何进入,请询问您组织的系统管理员) 中SPA服务所在的子账户,如果没有开启Cloud Foundry服务的用户请先开启,步骤详见
SAP Business Technology Platform (BTP) 中控台概览及基本操作练习 | SAP Blogs中的第5部分。
开启Cloud Foundry之后,进入
Cloud Foundry-空间-右上角的创建空间按钮 ,为新空间命名,为本人勾选身份后即可完成创建
接下来进入
实例和租用-右上角的创建
实例信息就需要选择先前创建的space,填写完本页内容即可点击
创建
创建完成后,在
服务-实例与租用 内
点击先前创建好的实例右侧的箭头,进入实例细节页面,点击
服务键值 右侧的 创建按钮,为其设定名称后即可完成创建
创建完后,
点击该服务键值的名字,即可看到服务键值的
凭据 也就是细节内容,这里一般每个服务键值代表一个需要Call API的用户。而
红圈内的四个属性都会是接下来测试接口时要用到的
3.使用Postman调用API进行测试
到这里我们创建好了触发器,创建好了访问API所需的内容,接下来进入Postman访问API即可
在正式测试前,先介绍一下,BTP上服务的身份认证标准都是基于Oauth 2.0的,但是Oauth 2.0本身拥有多种具体认证方式,这里选择先获取access_token再基于token来访问服务
Postman为用户提供了方便的手段,只需要在请求的Authorization部分填写获取Access Token所需资料即可更新token
之后在Headers部分添加键irpa-api-key,对应的值即先前在SPA中控台-控制塔-API密钥内获取的值,(如果要使用在其他request内获取的token,还需要添加一个Authorization: Bearer access_token的键值对)
再在Body处选择Raw类型,填入
{
"invocationContext": "invocation_context",
"input": {}
}
最后点击Postman右上角的Send,即可在获取到token后,发送请求到对应触发器,来触发流程了,一次成功的请求会收到一条jobUid,意思即为被触发的流程任务ID
当然也可以自行通过一个独立的request,使用basic auth,用户名密码为clientid和clientsec,来获取Access Token,再用在真实的服务请求上,具体方式不在此赘述
以上就是SPA API 触发器的使用过程,关于本文内容有任何问题或见解,欢迎在评论区留下你的想法,如果时间紧迫,也可以直接联系到我 arthuryang1996@foxmail.com,感谢你的时间