当前位置: 首页 > 后端技术 > Java

使用Java接口永中云编辑,实现文档的在线编辑

时间:2023-04-02 09:48:51 Java

基于永中WebOffice的文档在线编辑能力,用户可以直接在网页上使用云编辑服务编辑文档,实时保存修改内容,并还原它根据文件版本id任何历史版本。首先要做的是成为开发人员并申请应用程序。在游族云服务平台首页(https://open.yozocloud.cn)点击“申请加入”填写信息,然后提交。然后点击页面右上角的“管理中心”,点击“申请添加新应用”按钮申请一个应用,然后得到下图所示的appId和appKey。然后阅读云编辑开发文档。官网的开发文档有编辑时要用到的所有接口,还给出了返回示例供参考,还有使用过程中遇到的常见问题总结。具体接入步骤如下:第一步:导入jar包生成签名。官网提供了多种流行编程语言的SDK。下载对应的SDK和demo,根据自己的开发语言生成签名。这里使用的是JAVASDK。SDK下载地址:https://cms.yozocloud.cn/info/file/getResource/81DEMO下载地址:https://cms.yozocloud.cn/info/file/getResource/82StringgetSign(Mapmap)throwsException{map.put("appId",newString[]{APPID});AppAuthenticatorauthenticator=newUaaAppAuthenticator(UaaConstant.SIGN,null,UaaConstant.APPID);Stringsign=authenticator.generateSign(APPKEY,map);System.out.println("符号="+符号);returnsign;}第2步:上传文件。这里我使用的是http上传接口。HttpPostpost=newHttpPost("http://dmc.yozocloud.cn/api/file/http");//创建参数集合Listlist=newArrayList();//添加参数列表。添加(新的BasicNameValuePair(“符号”,符号));list.add(newBasicNameValuePair("appId",APPID));list.add(newBasicNameValuePair("fileUrl",fileUrl));//将参数放入requestObject中,post发送的参数列表,指定格式post.setEntity(newUrlEncodedFormEntity(list,"UTF-8"));//添加请求头参数CloseableHttpClientclient=HttpClients.createDefault();//开始执行请求,并获取返回值CloseableHttpResponseresponse=client.execute(post);//获取返回的实体对象HttpEntityentity=response.getEntity();//将实体对象转为stringStringresult=EntityUtils.toString(entity,"UTF-8");//返回内容System.out.println("返回信息为:"+result);第三步:获取编辑地址。每次调用接口,用到哪些参数,这些参数就是用来生成一个标志的,multipartFile除外。不要为未使用的参数传递null或空字符串。JSONObjectdata=JSONObject.parseObject(result).getJSONObject("data");StringfileVersionId=data.getString("fileVersionId");//获取返回的fileVersionIdMapparamMap=newHashMap<>();paramMap.put("fileVersionId",newString[]{fileVersionId});Strings=getSign(paramMap);//生成签名System.out.println("拼接地址:"+VIEWFILE+"?appId="+APPID+"&fileVersionId="+fileVersionId+"&sign="+s);//输出拼接地址最后运行程序得到编辑地址。以下是源文档与云编辑编辑的文档对比:源文档:云编辑:注:1.用户必须在云编辑开发信息中填写正确的数据回调地址,才能收到新的文件版本id,并在数据回调的URL下添加一个POST接口,接口名称设置为:/3rd/edit/callBack,接口接收转换回调数据的代码示例如下:2.云编辑保存在实时,关闭编辑页面后30分钟无操作或编辑页面全部触发回调;3.云剪辑不支持多人协作。如果编辑时可以查看文档,可以通过参数“autoReader=true”来控制只读,但是查看的文档是编辑前的文档,不能查看。4.进入编辑页面时,可以直接进入拼接地址。如果访问重定向链接,会提示“加入编辑失败,您无权编辑此文档或会话已过期”。