• 文档在线预览 kkFileView 使用小记


     如果你是通过搜索引擎找到这篇文章的,相信你大概率已经去过kkfileview的github首页

    在此我就不做过多介绍了,如果是在不清楚项目基本信息请自己去看github

    我在这篇博文主要写的是使用方式,希望能帮助到大家

    以下将该项目简称为kk

    ------------------------------------------------------------------------------

    一  :  先说原理

    1.kk接口通过http或者ftp方式拿到文件服务器上的文件,下载kk服务所在服务器

    2.调用转换接口转换文件

    3.通过open的方式打开新的文件,通过生成的页面装填进去(doc通常是图片或pdf,excel就直接是html了)

    kk3.x主要是使用其内部重构的org.artofsolving.jodconverter代码进行转换

    ------------------------------------------------------------------------------

    二  :  使用姿势

    假设你的kk服务部署在linux服务器上

    1.下载kkfileview的tar.gz包 (推荐使用3.6.0 ,坑少)

    2.解压到具体目录,并运行{KK_HOME}/bin/install.sh  安装openoffice,具体看官方文档,有详细解释

    3.修改{KK_HOME}/config/application.properties

    强烈推荐使用ftp方式获取待转换的文件,本文只写了ftp方式,http方式请自行搭建http文件服务,这里不做展开

      修改项:

            1. ftp.username 

            2. ftp.password

    4.安装Linux中文字体(因为大部分运维都不会去安装这些字体),可以防止转换文件的时候乱码,尤其是word excel这些

    点击 这里的链接 教程安装

    5. 点击这里 找到 

    非匿名访问,确定只有访问一台FTP服务器 

    var url = 'ftp://127.0.0.1/file/test.txt'; //要预览文件的访问地址
    window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(url));

    6. 新建一个html页面

    引入

        <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/js-base64@3.6.0/base64.min.js"></script>
        <script src="http://apps.bdimg.com/libs/jquery/1.9.1/jquery.min.js"></script>
    7. 保存html 然后浏览器打开 ,第一次打开会提示阻止弹窗,点击允许
    ---------------------------------------------------------------------------------------------------------------------
     
    三  :  问题排查
     
    假设按照上面的步骤你遇到了坑
    排查问题的思路主要在这几点
     
    1.检查前端页面的base64包,转换之后的编码是否和你要打开的文件名一致

    2.检查ftp服务器,用户名,密码,端口,如果ftp服务器没有用默认端口,那么需要在

    var url = 'ftp://127.0.0.1/file/test.txt'; //要预览文件的访问地址

    这句话加上端口,例如
    var url = 'ftp://127.0.0.1:9876/file/test.txt'; //要预览文件的访问地址

      9876就是ftp服务端口

    3.检查文件是否损坏,正常情况下能不能打开

    4.kk服务器端口,默认8012是否开启

    ------------------------------------------------------------------------------------------------------------------

    总的来说,需要结合报错信息来找问题,

    结尾真挚的说一句kkfileview,NB! 感谢

  • 相关阅读:
    P4556 [Vani有约会]雨天的尾巴 /【模板】线段树合并
    HDU 5649 DZY Loves Sorting
    SpringBoot中控制器如何接纳前台传来的含列表数据
    【Oracle】更改Oracle用户的密码
    运行期建立HikariDataSource和JdbcTemplate
    linux下nginx重启
    kubernetes认证授权机制
    linux中sed如何替换换行符 top p `ps aux | grep "Ali" | egrep v "grep|PID" | awk F'[ ]+' '{print $2}'|sed ":a;N;s/\n/,/g;ta" `
    kubelet使用了一个Node Allocatable
    k8s 证书 ca apiserver etcd kubeproxy kubeletclent
  • 原文地址:https://www.cnblogs.com/igong/p/15018120.html
Copyright © 2020-2023  润新知