线上业务系统在调用毕升office时打开业务系统中的文件时,需要告诉毕升office系统这个要打开的文件的信息,以及目前是以那个用户身份来打开的。文件信息是告诉毕升office系统,要打开的文件在哪里存放,文件的唯一标示是什么,文件的名称是什么;用户信息用于识别本次编辑/预览的用户是谁。
可以与毕升集成业务系统包括各类需要在线处理文件的系统,例如:网盘,OA,公文系统等。这些系统在需要在线处理文件的预览,协同编辑时,可选择与毕升office系统进行集成
参数的具体结构如下:
{
doc: {
docId: "",
title: "",
fetchUrl: "",
},
user: {
uid: "",
nickName: "",
avatar: ""
},
}
参数中doc部分为需要毕升office系统处理的文件的信息,各个字段具体意义如下:
docId,title是必须传入的信息。docId将作为后续该文件在系统中处理的唯一标示,也是文件处理完成之后再次与业务系统交互时,识别文件的唯一标示。title的主要意义是使用其扩展名,识别文件类型。当不穿入fetchUrl时,标示此时的文件为空文件,系统将打开一个空文件,此时相当于是创建来一个文件。
fetchUrl为该文件在业务系统中的下载地址。该地址必须是一个http 请求地址,并且务必确保毕升office服务能够请求到该地址。
参数中user部分为用户信息,也就是本次调用毕升office系统处理文件的用户的信息,各个字段具体意义如下:
在集成过程中用户信息是必须传入的。并且在调用Office对文件进行编辑时,不同的用户的uid必须是不同的。不同的用户使用同一个uid将导致重复uid的用户被强制下线
可选参数的作用是告之毕升office系统在处理文件时的其他信息,以便系统做出相应的处理。例如:告之编辑器系统用户在处理文件时相应的权限,预览文件时是使用PDF模式预览,文件在处理时加上的水印信息等。
该部分参数的意义是确定在调用毕升系统时,该用户的权限:即用户是否可以修改文件的权限,是否可以下载文件,打印文件等。
参数具体信息如下:
{
doc: {
docId: "",
title: "",
fetchUrl: ""
},
user: {
uid: "",
nickName: "",
avatar: "",
privilege: [
'FILE_READ','FILE_WRITE','FILE_DOWNLOAD', 'FILE_PRINT'
]
},
}
如上所示,在privilege数组中的是该用户打开文件时拥有的各项权限。权限参数具体意义如下:
FILE_READ:可读,用户可以预览该文件,
FILE_WRITE:可编辑,用户可以编辑该文件;
FILE_DOWNLOAD:可下载,用户可下载该文件;
FILE_PRINT:可打印,用户可以打印该文件。
以上四项权限是文件打开时可以配置的全部权限。也是调用毕升office系统时默认的权限配置。在实际使用过程中更加实际使用需要可以减少部分权限:例如预览模式下:如果是在预览模式下,需要隐藏编辑以及下载按钮,可以不传FILE_WRITE和FILED_OWNLOAD这两个权限值。在编辑模式下,如果禁止文件下载,可以不传入FILE_DOWNLOAD参数。
回存是指文件在毕升系统中处理完成之后,需要将新生成的office文件送回到原来的业务系统中。通常可以在系统中为所有的文件指定一个统一的回存地址,在该方法不能满足需求时可以为每个文档指定不同的回存地址。参数指定的具体方式如下:
{
doc: {
docId: "",
title: "",
fetchUrl: "",
callback:"" //指定该文档的回存地址
},
user: {
....
},
}
当文档数据指定callback之后,该文档的回存都会发送到callback指定的地址。
回存的具体意义在文件回存的相关部分会做详细说明。
其他可选参数可以在文档信息部分或者用户信息部分的opts参数来指定,这点将在后文中的各个部分都会提到。
{
doc: {
...
opts:{}
},
user: {
...
opts:{}
},
}
具体使用时,只需要在doc,user中一处指定即可。并且会优先使用user中的部分。