简单介绍下当初和门户联调的一些功能。

RSA加密

手机银行进入多元金融首页需数据加密传入,和门户约定使用RSA加密。门户提供公钥给手机银行对数据进行加密,门户收到数据后用私钥解密。

数据验签说明

1、集团门户为每个子系统分配一个md5key,作为md5摘要计算的盐值。

2、通信内容MD5签名过程:通信请求方将相关请求参数值做md5计算获取到校验串并发送给通信接收方。

3、通信内容MD5验签过程:通信接收方将收到的相关请求参数值做md5计算得到校验串,并跟收到的校验串做比对,一致则认为验签成功,不一致则验签失败。

时间戳

手机银行加密的数据拼上请求时的时间戳进行加密。

1、门户从加密数据内容中获取到手机银行的时间戳T1,以及门户当前系统时间戳T2。

当满足-10秒<T2-T1<30秒时,认为该请求是有效的,否则为无效。

2、通信接受方必须实现防重放攻击即收到的同一请求的url(带敏感信息的url),保证第一次收到时才有效。

3、 通信双方的系统时间保证跟北京时间同步。

4、手机银行客户端需要自定义请求报文头的user-agent信息,增加请求来源标识,统一为“cibbank”,以此增加授信机制。

5、门户和子公司交互均使用https协议。

报文信息详细

A01

1)业务场景

手机银行已登录用户访问集团门户

2)请求方式

https:// app端集团门户入口地址?from=xxx&data=xxx&mac=xxx

3)data报文信息

参数名 是否必输 说明
sn A01
from 通信发起方系统编号
certType app登录用户证件类型
certNo app登录用户证件号码
custName app登录用户姓名
time 发起系统时间戳
target 使用场景:集团门户调用app的登录脚本(doHomeAppLogin)时,会传个target参数,在app登录后需重定向到门户页面时必须带上target参数,参数值为门户js接口传递的那个值
A02

1)业务场景

手机银行app未登录用户访问集团门户。

2)请求方式

https:// app端集团门户入口地址?from=xxx&data=xxx&mac=xxx

3)data报文信息

参数名 是否必输 说明
sn A02
from 通信发起方系统编号
time 发起系统时间戳
AA1

1)业务场景

手机银行app已登录用户访问财富总览(提供给原手机银行财富总览功能跳转使用,门户接受请求后响应财富总览功能页,并且返回直接回到APP)

2)请求方式

https:// app端集团门户入口地址?from=xxx&data=xxx&mac=xxx

3)data报文信息

参数名 是否必输 说明
sn AA1
from 通信发起方系统编号
certType app登录用户证件类型
certNo app登录用户证件号码
custName app登录用户姓名
time 发起系统时间戳

手机银行访问门户报错时错误码信息表

错误码 错误信息
52003 MD5校验失败
52004 RSA解密失败
52005 校验串超时
52006 json格式不对
52007 url重复请求
52023 报文数据的不完整错误
52027 非法的user-agent

手机银行提供给门户调用的接口

序号 接口名称 接口提供者 接口说明
1 打开app 入口app H5页面调用该接口打开第三方app
2 下载app 入口app H5页面调用该接口下载第三方app
3 app返回 入口app 门户调用该接口返回到入口app首屏
4 app登录 入口app 门户调用该接口打开入口app的用户登录界面
5 app分享 入口app H5页面调用该接口分享指定内容

打开app接口

1) 功能描述

H5页面调用该接口打开第三方app。

2) 业务场景

H5页面基于业务需求,打开其他子公司app。例如:门户的金融资讯,当用户点击“更多”时,提示用户“请您前往“兴业研究”客户端,获取更多精彩资讯。”,用户可选择“打开”兴业研究app。

3) 接口格式说明

img

4) 接口的JSON参数说明

参数名称 参数类型 参数说明
iOSScheme String 必选,iOS应用scheme值
AndroidPackageName String 必选,Android应用包名
AndroidClassName String 必选,Android应用启动页面类名
callbackName String 可选,回调方法名(打开失败时,入口app执行H5页面定义的回调方法)

下载app接口

1) 功能描述

H5页面调用该接口下载第三方app(通过打开浏览器下载)。

2) 业务场景

H5页面基于业务需求,打开其他子公司app。例如:门户的金融资讯,当用户点击“更多”时,提示用户“请您前往“兴业研究”客户端,获取更多精彩资讯。”,用户可选择“下载”兴业研究app。

3) 接口格式说明

img

4) 接口的JSON参数说明

参数名称 参数类型 参数说明
url String 必选,iOS或Android应用的下载地址

返回app

1) 功能描述

门户调用该接口返回到入口app首屏。

2) 业务场景

当门户需要返回到入口app时,调用该接口。

3) 接口格式说明

img

登录接口

1) 功能描述

门户调用该接口打开入口app的用户登录界面。

2) 业务场景

门户允许用户以未登录状态访问,但门户的财富总览和承接页要求用户必须以登录状态访问。所以当未登录的用户要访问财富总览或承接页时,门户会调用入口app的用户登录界面,引导用户进行登录。登录成功后,自动跳转到财富总览或承接页。

3) 接口格式说明

img

4) 接口的JSON参数说明

参数名称 参数类型 参数说明
target String 可选,用户登录成功后跳转到的目标地址(子公司系统编号或财富总览编号)

分享接口

1) 功能描述

H5页面调用该接口分享指定内容。

2) 业务场景

门户或子公司基于业务需求,引导用户分享指定的产品服务或营销活动等。

3) 接口格式说明

img

4) 接口的JSON参数说明

参数名称 参数类型 参数说明
url String 必选,分享内容的URL地址
title String 必选,分享内容的标题
description String 可选,分享内容的描述
picUrl String 可选,分享内容的缩略图地址