回调API列表
获取文件信息
页面渲染文件时需通过此回调获取文件元数据,包括当前文件信息、当前用户信息、操作权限信息
文档打开时会进行多次回调:由于文档加载是动态逐页加载渲染,加载过程中需要向业务系统鉴权以为保证文档安全。 若需降低回调频率,需执行以下操作:1.服务端全局配置开启缓存 2.TOKEN访问:通过JSSDK设置TOKEN。此处TOKEN访问是因为file/info数据根据不同用户请求到的信息不一致,若不根据TOKEN进行缓存数据会导致越权行为。 3.file/info回调接口返回缓存时间
回调说明
回调地址: 回调地址 + uri(默认/v1/3rd/file/info)
请求方法: GET
签名方式: 无
请求头(Header)
| 名称 | 是否必填 | 说明 |
|---|---|---|
| X-Weboffice-File-Id | 是 | 文件id,字符串长度不超过64位 |
| X-Wps-Weboffice-Token | 否 | 开发者通过JSSDK设置用于用户鉴权TOKEN |
查询参数(Query)
| 参数 | 参数类型 | 是否必填 | 说明 |
|---|---|---|---|
| *(任意参数) | *(任意类型) | 否 | 在获取预览链接时按需求传入的所有自定义参数 |
响应体(Response)
正常返回
| 名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| file | object | 是 | 文件信息 |
| ∟ id | string | 是 | 文件id,字符串长度不超过64位 |
| ∟ name | string | 是 | 文件名必须带后缀 |
| ∟ version | integer | 是 | 文档版本号,int32类型,从1开始累加,最大长度2147483647 |
| ∟ size | integer | 是 | 文档大小,单位为字节;此处需传文件真实大小,否则会出现异常 |
| ∟ readonly | Boolean | 否 | readonly默认为falsetrue开启表格筛选,支持对EXCEL表格文档筛选,但不支持对EXCEL表格文档开启多人同步筛选,该预览特性见常见问题false关闭表格筛选(20220707新增) |
| ∟ creator | string | 是 | 创建者id,字符串长度不超过32位。与user里的id一致。 |
| ∟ create_time | integer | 是 | 创建时间,时间戳,单位为秒。 |
| ∟ modifier | string | 是 | 修改者id,字符串长度不超过32位 |
| ∟ modify_time | integer | 是 | 最近修改时间,时间戳,单位为秒 |
| ∟ download_url | string | 是 | 文档下载地址 |
| ∟ preview_pages | integer | 是 | 普通预览模式下可限制预览页数(不超过5000)previewPages 默认值为 0,不限制预览页数;previewPages >= 1 时,限制生效,限制的页数为 previewpages 字段的值 |
| ∟ user_acl | object | 否 | 用户权限 |
| ∟ rename | integer | 否 | 重命名权限,1为打开该权限,0为关闭该权限,默认为0 |
| ∟ history | integer | 否 | 历史文件打开权限,1为打开该权限,0为关闭该权限,默认为1 |
| ∟ copy | integer | 否 | 复制权限,1为打开该权限,0为关闭该权限,默认为1 |
| ∟ export | integer | 否 | 导出权限,1为打开该权限,0为关闭该权限,默认为1 |
| integer | 否 | 打印权限,1为打开该权限,0为关闭该权限,默认为1 | |
| ∟ watermark | object | 否 | 水印参数 |
| ∟ type | integer | 否 | 水印类型, 0为无水印; 1为文字水印 |
| ∟ value | string | 否 | 文字水印的文字,支持通过\r\n换行,支持emoji表情当type为1时此字段必选 |
| ∟ fillstyle | string | 否 | 水印的颜色(含透明度),非必选,有默认值。格式为:rgba( 192, 192, 192, 0.6 ) |
| ∟ font | string | 否 | 水印的字体,非必选,有默认值,格式为bold 20px Serif |
| ∟ rotate | float | 否 | 水印的旋转度(弧度),非必选,有默认值,默认为-0.7853982 |
| ∟ horizontal | integer | 否 | 水印水平间距,非必选,有默认值,默认为50 |
| ∟ vertical | integer | 否 | 水印垂直间距,非必选,有默认值,默认为100 |
| ∟ attrs | object | 否 | 附加参数,v6.0.2209.20220920新增 |
| ∟ cachetime | string | 否 | 单位秒,取值范围为1-300,超过300秒不会缓存回调信息,此字段需服务端全局配置开启缓存,且需要使用token访问预览链接 |
| user | object | 是 | 用户信息 |
| ∟ id | string | 是 | 用户id,长度不超过32位,与creator、modifier一致 |
| ∟ name | string | 是 | 用户名称 |
| ∟ permission | string | 是 | 用户操作权限,预览固定为read |
正常返回示例
json
{
"file": {
"id": "132aa30a87064",
"name": "example.doc",
"version": 1,
"size": 200,
"creator": "id1000",
"create_time": 1136185445,
"modifier": "id1000",
"modify_time": 1551409818,
"download_url": "http://www.xxx.cn/v1/file?fid=f132aa30a87064",
"preview_pages": 3,
"user_acl": {
"rename": 1,
"history": 1,
"copy": 1,
"export": 1,
"print": 1
},
"watermark": {
"type": 1,
"value": "禁止传阅\r\nwps-1000",
"fillstyle": "rgba( 192, 192, 192, 0.6 )",
"font": "bold 20px Serif",
"rotate": -0.7853982,
"horizontal": 50,
"vertical": 100
},
"attrs": {
"cachetime": "100"
}
},
"user": {
"id": "id1000",
"name": "wps-1000",
"permission": "read"
}
}异常返回
| 名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| code | integer | 是 | 错误码,详细见《回调错误码》 |
| message | string | 是 | 错误提示 |
| details | string | 是 | 错误提示详细信息 |
| hint | string | 否 | 自定义错误信息,当code为40007错误码时必填 |
异常返回示例
json
{
"code": 40005,
"message": "InvalidArgument",
"details": "参数错误",
"hint": "自定义错误提示"
}获取特定版本的文件信息(缓存预览必需实现)
适用版本>=v6.0.2206.20220629
缓存预览获取特定版本文档的文件信息,缓存预览打开预览页面时及调用预处理接口需要回调本接口。
回调说明
回调地址: 回调地址 + uri(默认/v1/3rd/file/version/:version)
请求方法: GET
签名方式: 无
请求头(Header)
| 名称 | 是否必填 | 说明 |
|---|---|---|
| Content-Type | 是 | 固定为: application/json |
| X-Weboffice-File-Id | 是 | 文件id,字符串长度不超过64位 |
| X-Wps-Weboffice-Token | 否 | 开发者通过JSSDK设置用于用户鉴权TOKEN |
查询参数(Query)
| 参数 | 参数类型 | 是否必填 | 说明 |
|---|---|---|---|
| *(任意参数) | *(任意类型) | 否 | 在获取预览链接时按需求传入的query中的所有用户以w_third开头的自定义参数 |
路径参数(Path)
| 名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| version | integer | 是 | 版本号 |
响应体(Response)
正常返回
当对接应用获取文件信息成功且完成版本保存后,返回以下信息:
| 名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| file | object | 是 | 新版本的文件 |
| ∟ id | string | 是 | 文件 id,字符串长度不超过 64 |
| ∟ name | string | 是 | 文件名(含后缀名) |
| ∟ version | integer | 是 | 当前版本号,顺序累加,位数小于 11 |
| ∟ size | integer | 是 | 文件大小,单位B(字节) |
| ∟ create_time | integer | 是 | 创建时间,时间戳,单位为秒 |
| ∟ creator | string | 是 | 创建者 id,字符串长度不超过 32 |
| ∟ modify_time | integer | 是 | 修改时间,时间戳,单位为秒 |
| ∟ modifier | string | 是 | 修改者 id,字符串长度不超过 32 |
| ∟ download_url | string | 是 | 文件下载地址 |
正常返回示例
json
{
"file": {
"id": "f132aa30a87064",
"name": "example.doc",
"version": 6,
"size": 200,
"create_time": 1136185445,
"creator": "id0",
"modify_time": 1551409818,
"modifier": "id1000",
"download_url": "http://www.xxx.cn/v1/file?fid=f132aa30a87064&version=6"
}
}异常返回
| 名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| code | integer | 是 | 错误码,详细见《回调错误码》 |
| message | string | 是 | 错误提示 |
| details | string | 是 | 错误提示详细信息 |
| hint | string | 否 | 自定义错误信息,当result为40007错误码时必填 |
异常返回示例
json
{
"code": 40005,
"message": "InvalidArgument",
"details": "参数错误",
"hint": "自定义错误提示"
}