目标应用系统对接
说明
1.公共参数:
<sitename>:表示数据分享平台域名,即fs.nje.cn
2.名词解释:
UIA:统一身份认证平台。
数据分享平台:能够实现将用户在文件存储系统的文件分享到目标应用系统,并能提供文件共享服务的平台。
目标应用系统:又称第三方应用系统,主要指可以获取分享文件的各种应用系统。
数据分享平台:能够实现将用户在文件存储系统的文件分享到目标应用系统,并能提供文件共享服务的平台。
3.使用场景:
目标应用系统A,假设A为公众平台,U为该平台用户。 文件存储系统B,U为该系统用户,在系统中存储了PPT、视频等案例。 U在A平台中想上传某ppt分享给其他用户观看,而此ppt已经上传于B系统。如果A、B系统均和数据分享平台对了对接。则P可以由A系统进行分享文件至B系统。
接口
1. 申请成为开发者:
2. 目标应用系统申请:
3. 目标应用系统开发文件分享页面:
请求参数:AppCode,EncrytString,TimeSpan,FileName,FileUrl,FileSize,FileType,ShareType,ShareFileRecordID,ShareUserName
名称 | 格式 | 是否可空 | 是否编码 | 说明 |
AppCode | String | 否 | 否 | 该目标应用系统申请的应用程序编号 |
EncrytString | String | 否 | 否 | AppKey+ TimeSpan在进行MD5加密后的字符串(转换后字母都为小写),AppKey为该目标应用系统申请的密钥) |
TimeSpan | String | 否 | 否 | 时间参数(时间戳)。时间验证与服务器时间误差不得超过5分钟(300秒),以北京时间为准。 |
FileName | String | 否 | 是 | 文件名称 |
FileUrl | String | 否 | 是 | 文件地址 |
FileSize | String | 否 | 是 | 文件大小 |
ShareType | String | 否 | 否 | 分享类型:1 分类 2 资源 |
FileType | String | 否 | 是 | 文件类型 |
ShareFileRecordID | String | 否 | 否 | 分享记录编号 |
ShareUserName | String | 否 | 否 | 分享用户名 |
4. 页面效果示例:
a):已对接UIA分享至目标应用系统【分享给自己】
b):已对接UIA分享至目标应用系统【分享给管理员】
c):已对接UIA分享至目标应用系统【分享给指定用户】
d):未对接UIA目标应用系统分享页面
5. 页面说明:
该页面由数据分享平台调用,调用时传入参数,分享页面根据传入的参数完成分享操作。
目标应用系统申请时可以设置是否已对接统一身份认证平台。
目标应用系统申请时,如果目标应用系统为已对接统一身份认证平台的系统,则ShareUserName字段有值,否则为空。已对接统一身份认证目标应用系统,可根据传入的用户名完成登录操作。未对接系统则需要在分享页面中加入身份认证逻辑。
ShareToUserNames是分享到用户的集合,用户名是以英文逗号分割。
分享成功后,需要调用数据分享平台”更新分享记录状态”方法,更新分享记录在数据分享平台中状态。
涉及算法见【接口相关算法】
参数编码见【编码】
6. 更新分享记录状态:
调用地址:/Share/UpdateShareStatus
请求参数:AppCode, EncrytString , TimeSpan ,ShareFileRecordID,ShareToUserNames
名称 | 格式 | 是否可空 | 是否编码 | 说明 |
AppCode | String | 否 | 否 | 该目标应用系统申请的应用程序编号 |
EncrytString | String | 否 | 否 | AppKey+ TimeSpan在进行MD5加密后的字符串(转换后字母都为小写),AppKey为该目标应用系统申请的密钥) |
TimeSpan | String | 否 | 否 | 时间参数(时间戳)。时间验证与服务器时间误差不得超过5分钟(300秒),以北京时间为准。 |
ShareFileRecordID | String | 否 | 否 | 分享记录编号 |
ShareToUserNames | String | 是 | 是 | 分享给这些用户名,用户名与用户名使用英文“,”分割。 |
返回结果:若验证不通过,则返回结果在页面上以文字形式显示。例如:
文字 | 说明 |
验证参数错误 | 缺少参数(未提供非空项参数或者不能为空的参数传了空值) |
应用程序编码错误 | 应用程序编码错误 |
应用程序密钥错误 | 应用程序密钥错误(所提供的应用程序密钥与数据分享平台中的密钥不一致) |
请求超时 | 请求超时(5分钟以内) |
更新成功 | 分享文件记录更新成功 |
更新失败 | 分享文件记录更新失败 |
该分享文件记录不存在 | 分享文件记录不存在 |
非法操作 | 无权限使用文件存储服务 |
编码
JS :
var fileName = escape(“admin”);
c#:
var userName = System.Web.HttpContext.Current.Server.UrlEncode("admin");
目标应用系统对接: Demo