当前位置: 首页 > news >正文

建始县城乡建设局网站南宁网约车租赁公司

建始县城乡建设局网站,南宁网约车租赁公司,网站建设与网站设计,邵阳seo安装Onlyoffice 拉取onlyoffice镜像 docker pull onlyoffice/documentserver 查看镜像是否下载完成 docker images 启动onlyoffice 以下是将本机的9001端口映射到docker的80端口上,访问时通过服务器ip:9001访问,并且用 -v 将本机机/data/a…

安装Onlyoffice

拉取onlyoffice镜像 

docker pull onlyoffice/documentserver

查看镜像是否下载完成

docker images

启动onlyoffice

以下是将本机的9001端口映射到docker的80端口上,访问时通过服务器ip:9001访问,并且用 -v 将本机机==/data/aws_s3/file-storage==文件夹挂载到docker的 /var/www/onlyoffice/documentserver/web-apps/wsData文件下,后续直接通过http请求读取对应的文件夹

docker run -i -t -d -p 9001:80 -v /data/aws_s3/file-storage:/var/www/onlyoffice/documentserver/web-apps/wsData onlyoffice/documentserver

打开浏览器输入ip:9001
出现以下页面就安装成功

进入容器修改配置:

docker exec -it 容器ID bash

 


示例应用

一、了解onlyoffice

ONLYOFFICE Docs是一个开源办公套件,包括文本文档、电子表格和演示文稿的编辑器。它提供以下功能:

1、创建、编辑和查看文本文档、电子表格和演示文稿;

2、与其他队友实时协作处理文件;

3、ONLYOFFICE Docs 还支持用于将您的应用程序与在线办公室集成的WOPI 协议。

二、前提准备

搭建安装onlyoffice,具体参考官网地址:

https://helpcenter.onlyoffice.com/installation/docs-developer-install-ubuntu.aspx?from=api_csharp_example

三、开发进行中

1、准备一个接口返回config配置文件。

@GetMapping("/config/{fileId}")
@ApiOperation("返回配置信息")
public String getConfig(ModelMap map,@PathVariable String fileId){//具体业务处理省略//主要是获取一些信息,用于设置html中的脚本对象config上。//4、设置视图数据:a、文件类型。b、用户信息。c、文件信息。map.addAttribute("docType",documentType);map.addAttribute("user",user);map.addAttribute("fileManager",fileManager);    //将html页面返回回去return "onlineEdit";
}

2、准备一个callback接口用于文件保存。

@PostMapping("/saveFile/{fileId}/{fileCode}")
@ApiOperation("在线编辑保存回调接口")
@ResponseBody
public void saveFile(HttpServletRequest request , HttpServletResponse response, @PathVariable String fileId, @PathVariable String fileCode) throws IOException {PrintWriter writer = response.getWriter();Scanner scanner = new Scanner(request.getInputStream()).useDelimiter("\\A");String body = scanner.hasNext() ? scanner.next() : "";JSONObject jsonObject = JSONObject.parseObject(body);System.out.println(jsonObject);//status等于2时表示已经准备好保存if((Integer) jsonObject.get("status") == 2){//2、根据返回的Url去下载文件URL url = new URL((String) jsonObject.get("url"));java.net.HttpURLConnection connection = (java.net.HttpURLConnection) url.openConnection();InputStream stream = connection.getInputStream();//此处获取到的流即是onlyoffice服务下的文件流。//3、重新上传业务省略connection.disconnect();}writer.write("{\"error\":0}");}

3、准备一个html页面。

<!DOCTYPE html>
<html lang="en" style="height: 100%;">
<head><meta charset="UTF-8"><script type="text/javascript" src="https://192.168.53.151:9000/web-apps/apps/api/documents/api.js"></script><script type="text/javascript" language="javascript" >var  config = {"type": "desktop","mode": "review","documentType": "[[${docType}]]","document": {"title": "[[${fileManager.fileName}]]","url": "文件下载地址","fileType": "[[${fileManager.fileType}]]","key": "[[${fileManager.fileManagerId}]]","info": {},"permissions": {"comment": true,"copy": true,"download": true,"edit": true,"print": true,"fillForms": true,"modifyFilter": true,"modifyContentControl": true,"review": true,"commentGroups": {}}},"editorConfig": {"mode": "edit","callbackUrl": 回调接口保存文件的地址,"lang": "zh","createUrl": "","templates": [{"icon": "","name": "Blank","url": "http://ip地址/OnlineEditorsExampleJava_war_exploded/EditorServlet?fileExt=docx"},{"icon": "http://ip地址/OnlineEditorsExampleJava_war_exploded/css/img/file_docx.svg","name": "With sample content","url": "http://ip地址/OnlineEditorsExampleJava_war_exploded/EditorServlet?fileExt=docx&sample=true"}],"user": {"id": "[[${user.userId}]]","name": "[[${user.username}]]"},"customization": {"goback": {"url": "http://ip地址/OnlineEditorsExampleJava_war_exploded/IndexServlet"},"forcesave": false,"submitForm": false,"about": true,"feedback": false},"canCoAuthoring": true,"canUseHistory": true,"canHistoryClose": true,"canHistoryRestore": false,"canSendEmailAddresses": false,"canRequestEditRights": true,"canRequestClose": false,"canRename": false,"canMakeActionLink": true,"canRequestUsers": true,"canRequestSendNotify": true,"canRequestSaveAs": false,"canRequestInsertImage": true,"canRequestMailMergeRecipients": true},"width": "100%","height": "100%","events": {},"frameEditorId": "iframeEditor"}var connectEditor = function () {new DocsAPI.DocEditor("placeholder", config);};if (window.addEventListener) {window.addEventListener("load", connectEditor);} else if (window.attachEvent) {window.attachEvent("load", connectEditor);}</script><title>在线编辑文档</title>
</head>
<body style="height: 100%; margin: 0;">
<div id="placeholder" style="height: 100%"></div>
</body>
</html>

更加具体的config对象和回调处理接口内容参考官网:

https://api.onlyoffice.com/editors/getdocs

四、测试

当我调用config接口时,打开不同类型的文件,展示返回html页面如下。

五、总结

1、要使用onlyoffice去在线编辑不难,主要是掌握config的配置。

2、它的一个工作流程:当我打开在线编辑时,接口设置数据返回html页面,并将数据拼接到config上。接着页面会根据config的url地址去下载源文件,最后将内容展示到html上。最后当我们修改完毕关闭了窗口时,会调用callbackurl的接口进行文件保存。
 


参考链接:链接1,链接(原理)2,链接3


如果本篇文章对你有帮助的话,很高兴能够帮助上你。

当然,如果你觉得文章有什么让你觉得不合理、或者有更简单的实现方法又或者有理解不来的地方,希望你在看到之后能够在评论里指出来,我会在看到之后尽快的回复你。

http://www.yayakq.cn/news/501256/

相关文章:

  • 重庆做网站找谁网站项目遇到的问题
  • 食品经营许可网站增项怎么做织梦快速建站
  • 网站中的图片展示功能该设计什么成都中企动力怎么样
  • 重庆南川网站制作价格江门专业做网站
  • 常州地区做网站烟台建设联合会网站
  • 领优惠券的网站怎么做大学生活网页制作模板
  • 手机端企业网站源码上海网站建设,分类广告
  • 网站架构策划有什么做服装的网站好
  • 招聘网站做招聘顾问教育网站建站
  • 电子商务网站的特点网站如何做静态化
  • 网站假备案举报wordpress把相对路径
  • 旅游公网站如何做企业彩铃网站源码
  • 网站开发 需要用到什么软件seo如何提高网站排名
  • 怎么做带购物功能的网站海淘网站主要关键词
  • 我国企业网站的建设情况怎么seo关键词优化排名
  • 什么网站可以做平面设计赚钱wordpress替换谷歌字体库
  • 吴忠建设网站建设网站比较好的公司吗
  • 室内设计网站模板制作相册影集软件
  • 网站如何从行为数据进行优化宁波住房城乡建设局网站
  • 外贸设计网站建设企业邮箱注册申请步骤
  • 厦门专业做网站的风铃上做的网站发布时号码填写
  • 网站不备案能用吗上海比较好的网站建设公司
  • 如何做旅游网站推销app开发工具简单
  • 商务网站建设期末考试制作企业官网
  • 厦门手机建站wordpress aspnet_client
  • 网站排名所以关键词下降吉林网站模板
  • 如何免费开自己的网站网站在线帮助如何设计
  • 网站优化 代码优化中国建设银行官网站下载中心
  • 做网站付款会有凭证吗注册会计师报名时间
  • 网站建设的市场策划苏州做管网gis的网站