当前位置:   article > 正文

在线Word编辑-OnlyOffice开源框架_office在线编辑开源

office在线编辑开源

在线Word编辑-OnlyOffice开源框架

介绍

社区版允许您在本地服务器上安装ONLYOFFICE Docs,并将在线编辑器与ONLYOFFICE协作平台或其他流行系统集成

ONLYOFFICE Docs 是一个在线办公套件,包括文本、电子表格和演示文稿的查看器和编辑器,完全兼容 Office Open XML 格式:.docx、.xlsx、.pptx,并支持实时协作编辑。

安装onlyoffice镜像

# 将数据存储在容器外部
mkdir -p /app/onlyoffice/DocumentServer/logs
chmod 400 /app/onlyoffice/DocumentServer/logs
# onlyoffice/documentserver社区服务版本
#  onlyoffice/documentserver-de 为开发版本:里面内置了rabbitmq、redis、nginx等必要的服务
docker pull onlyoffice/documentserver
docker run -i -t -d -p -e TZ="Asia/Shanghai"  8888:80 --restart=always    -v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice    -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data     -v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice     -v /app/onlyoffice/DocumentServer/db:/var/lib/postgresql -e JWT_SECRET=my_jwt_secret onlyoffice/documentserver

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

后端仅需提供两个接口

  1. 接口1:返回文件链接和md5
  2. 文件保存回调接口
    官网示例
public class IndexServlet extends HttpServlet {
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        PrintWriter writer = response.getWriter();

        Scanner scanner = new Scanner(request.getInputStream()).useDelimiter("\\A");
        String body = scanner.hasNext() ? scanner.next() : "";

        JSONObject jsonObj = (JSONObject) new JSONParser().parse(body);

        if((long) jsonObj.get("status") == 2)
        {
            String downloadUri = (String) jsonObj.get("url");

            URL url = new URL(downloadUri);
            java.net.HttpURLConnection connection = (java.net.HttpURLConnection) url.openConnection();
            InputStream stream = connection.getInputStream();

            File savedFile = new File(pathForSave);
            try (FileOutputStream out = new FileOutputStream(savedFile)) {
                int read;
                final byte[] bytes = new byte[1024];
                while ((read = stream.read(bytes)) != -1) {
                    out.write(bytes, 0, read);
                }

                out.flush();
            }

            connection.disconnect();
        }
        writer.write("{\"error\":0}");
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34

参考 地址

官网安装说明
onlyoffice+vue实现在线预览在线编辑
官网使用说明

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/432477
推荐阅读
相关标签
  

闽ICP备14008679号