开发者社区
社区提问意见反馈
开发者钉组织
扫描二维码
加入支付宝开发者钉组织
android 开发文档
windows 开发文档
linux 开发文档
iot 小程序开发文档
其它
api
更多使用指南
开发 > 其它 > iot 开放平台 spi 流程概览
收藏
订阅更新
我的文档
设置
简介
本文介绍如何使用 iot 开放平台快速将服务内的 spi 流程节点能力提供方配置为开发者自己指定的能力提供方,即 spi 能力的接入。
名词解释
应用:iot 开放平台上的应用,开发者登录 iot 开放平台后可以创建属于自己的应用。
服务:iot 开放平台上的服务,包括蚂蚁官方服务和开发者自建服务两种,服务可供应用进行集成和调用。
spi:service provide interface,支付宝开放平台调用第三方系统服务提供的接口,实现和不同软件服务商的协同,扩展更多的生态场景,丰富开放平台提供的产品能力。
spi扩展:外部服务商实现 spi 接口并将其与 iot 开放平台服务中对应的 spi 接口进行关联的动作称为 spi 扩展,要求服务商使用 http 接口服务的形式实现 spi 接口。在扩展时,服务商在实现 spi 接口时需要注意获取到接口定义中的所有参数,并且返回的值需要符合 spi 接口返回值的定义。
iot 开放平台 spi 接入流程
1服务商与支付宝确定要集成的服务以及要扩展的 spi 接口。
2服务商在自己的服务端以 http 接口服务的形式实现 spi 接口并将其发布上线,使其可供外部访问。调用的安全性问题可以查看加签验签。
3服务商在 iot 开放平台将服务中 spi 接口和服务商实现相关联,即执行扩展动作。
4服务商在 iot 开放平台调试服务商实现,此时会向服务商实现 spi 接口的服务端发起 http 请求,以此来验证服务商对 spi 的实现是否符合预期。
5服务商提交 spi 实现审核以及服务扩展审核。
流程示意图
6.png

iot 开放平台 spi 扩展流程
集成服务
确定需要集成的服务,点击 扩展 按钮进入服务扩展页面。请与支付宝确认当前的业务需要集成的服务以及服务中需要扩展的 spi 接口。
7.png

接入spi配置
1选择需要的 spi 接口,点击 接入 按钮进入 spi 配置页面。
8.png

2填入服务商侧对此 spi 接口的实现地址。此处的后端服务正式地址和后端服务测试地址都需要填写,业务上线后, iot 开放平台只会调用后端服务正式地址;测试期间,两个地址都可以被调用,取决于在测试时选择的环境。
9.png

页面内容说明
后端服务正式地址:当通过设备端对目标服务发起调用时,将会请求此处配置的后端正式服务地址,此处的正式服务地址也可用于 spi 调试阶段,用于调试验证服务商侧对 spi 接口的实现逻辑。
后端服务测试地址:此地址只能用于在  iot 开放平台发起 spi 测试的场景,后端服务测试地址在设备端发起服务调用的时候不会被调用,该地址只能用于调试验证服务商侧对 spi 接口的实现逻辑。在最终业务上线后,服务商的后端服务测试地址对应的服务可以下线,不会影响从 iot 开放平台侧对 spi 的调用。
响应是否加签:服务商侧实现 spi 接口的服务器向 iot 开放平台网关返回数据时,是否使用服务商侧的私钥对响应结果进行加签,如果进行了加签,则当响应到达 iot 开放平台网关时,将会使用服务商的公钥对此响应进行验签,此操作要求服务商在 iot 开放平台的应用详情的开发设置中录入 服务商侧的公钥,在录入公钥后,点击查看公钥将会同时查看到服务商的公钥和支付宝的公钥,需要注意的是,公钥和 appid 相绑定,每一个 appid 可以设置各自的公钥。当 iot 开放平台侧向服务商侧发起 spi 请求时,始终会使用支付宝侧的私钥对请求数据进行加签,服务商侧可以自行选择是否对接收到的请求进行验签,如需验签,需使用支付宝侧的公钥进行验签。
请求编码:发给服务商侧 spi 接口实现的 http 请求中的参数的编码格式。
调试spi接口实现
调试 spi 接口实现即从 iot 开放平台通过支付宝网关对服务商侧的 spi 接口实现地址发起访问,可用于服务商验证自己服务端的 spi 接口实现逻辑。
处可以选择对后端服务正式地址和后端服务测试地址进行调试,导入参数及其默认值会将 spi 接口定义中的参数默认值导入到数据表单中,参数名不可随意改动,参数值可以根据服务商侧的业务测试逻辑进行调整,此处若对 spi 接口的参数定义有疑惑,可以联系支付宝获取 spi 接口的定义文档。
10.png

页面内容说明
参数项
解释
header 参数
spi 接口定义中的 header 参数,当 iot 开放平台给服务商侧 spi 接口实现服务端发起请求时,将会被置于 http 请求的请求头中,即 http 请求中的 header 字段。
query 参数
spi 接口定义中的 query 参数,当 iot 开放平台给服务商侧 spi 接口实现服务端发起请求时,将会被置于 http 请求的链接中。
body 参数
spi 接口定义中的 body 参数,当 iot 开放平台给服务商侧 spi 接口实现服务端发起请求时,将会被置于 http 请求的请求体中。
关于响应结果
发起请求之后可以在响应中查看结果,如果返回的结果提示为错误码,可根据返回的错误码通过 进行问题排查,当正常返回却不符合服务商侧服务端的 spi 接口实现的逻辑时,需服务商结合自己的服务端实现进行问题排查。
提交审核
1当调试完成后,即可对 spi 实现提交审核。点击 提审 按钮。
a对 spi 接口实现提交审核,对应spi 列表中的 提审 按钮。
b对服务扩展提交审核,对应 完成扩展 按钮。
1.png

2当对接口实现提交审核并通过后,接口状态将会转为等待完成扩展
2.png

3当完成扩展发起的审核通过后,接口状态和服务扩展状态都会变为已接入,此时整个 spi 扩展流程完成。关于审核流程,可以联系支付宝进行推进。
3.png

faq
spi 扩展流程中存在审核未通过的情况,是否会影响应用发布流程?
会。当进入接入流程后,需审核通过后才能执行后续的应用发布流程。
是否每扩展一个接口,都需要提审?
是。
是否每扩展一个接口,都需要完成扩展?
不需要。完成扩展在当前应用的当前版本只需要完成一次即可。
当应用升级之后,是否需要重新扩展接口,重新扩展之后对旧版本应用是否有影响?
应用升级需要重新扩展服务中的 spi 接口,如果在新版本应用中扩展了接口并且旧版本应用中有相同的接口且也被扩展过,那么旧版本的 spi 接口将会调用到新版本的扩展地址中。如果修改该接口的实现地址,服务商需要考虑兼容性。
当需要在多个服务中扩展同一个 spi 接口时,以哪一个实现地址为准?
此种情况下,多个服务中对相同的 spi 接口进行扩展,所有的 spi 实现将会以最后一个被扩展的为准,并且在各个服务中保持一致。
验签所需的公钥如何配置?
配置入口:应用 > 详情 > 开发设置 > 接口加签方式。
根据页面提示,填入服务商的公钥并确认,此时将会弹窗展示填入的公钥以及支付宝的公钥,支付宝公钥可用于服务商服务端对支付宝过来的 spi 请求的验签,服务商公钥将在 spi 响应到达支付宝网关并且配置了响应加签选项时执行验签。
注意:iot开放平台只会要求服务商填入公钥。
4.png

到达服务商服务端的 spi 请求报文格式定义?
详情可查看
服务商响应报文格式定义?
详情可查看
服务商验签逻辑
详情可查看
服务商端的 spi 实现示例
详情可查看
内容没有解决您的问题?您还可以前往 或 寻求帮助
凯发k8官方网娱乐官方 copyright © 2022 支付宝(杭州)信息技术有限公司  | icp证浙b2-20160559
该文档对你是否有帮助?
当前页面目录
网站地图