>[success]从融合平台跳转到第三方系统
假设从融合平台跳转到第三方系统特定页面ssologin.jsp ,融合平台会向此页面以get方式传递三个参数
| 参数名称 | 数据类型 |参数描述|备注说明|
| --- | --- |--- |--- |
| loginId | String |当前用户登录账号|例如:zoujianbo|
|mobile|String|用户对应的手机号码|13477304418|
| url|String|需要跳转到的目标页面地址|非必须,如果非空则已经经过URL编码处理|
例如:
```
http://yourHostipAddress/ssologin.jsp?loginId=zoujianbo&mobile=13477304418&url=http%3A%2F%2Fwww.baidu.com
```
在本页面需要按如下逻辑处理:
1、根据获取到的loginId,调用远程认证接口验证用户是否合法(使用get方式请求,生产环境下需要讲第三方服务器IP提供配置白名单)
```
http://jgfw.yichang.gov.cn/xgjv3/api/sso/getToken?loginId=请求获取的loginId值
```
接口请求成功会获取到如下返回结果:
~~~
{
"code":1,
"msg":"success",
"data":{
"ssoToken":"7E740343F08F1F284A7E469676B1E1F44A33E769E64F8FBA998FF44C18BD54773797408F0E7A6A715C425FA669A285D4
"}
}
~~~
请求失败或获取到类似如下错误信息:
```
{"code":0,"msg":"Token获取失败: 系统中找不到相关人员"}
```
2、远程用户认证通过后,需要使用请求获取的手机号去本地系统匹配用户信息并做本地的登录状态维护并跳转到目标地址(参数url)
>[info]从第三方系统跳转到融合平台
假设从第三方跳转到融合平台,需要先跳到第三方系统内的固定地址(例如:jump.jsp)页面,然后按如下逻辑处理:
1、由于第三方系统的账号和融合平台账号并不一定一致,需要先使用唯一致的标识符手机号去换取ssoToken
```
http://jgfw.yichang.gov.cn/xgjv3/api/sso/getTokenByMobile?mobile=13477304418
```
接口请求成功会返回如下数据:
```
{
"code":1,
"msg":"success",
"data":{
"ssoToken":"7E740343F08F1F284A7E469676B1E1F44A33E769E64F8FBA998FF44C18BD54773797408F0E7A6A715C425FA669A285D4"}
}
```
2、将获取到的ssoToken拼接成完成的URL地址后跳转
```
http://jgfw.n3.cn:81/wui/index.html?ssoToken=接口请求到的ssoToken
```
这样就能实现第三方系统跳转到融合平台了。
【注意】:
由于ssoToken只有30分钟的有效期,且只能被消费一次,所以应当在每次跳转到融合平台之前独立请求ssoToken信息。
