• minio + kkFileView 实现在线预览


    minio上传的pdf之类文件不支持预览,地址在浏览器访问时会直接下载,现在搭配kkFileView文件预览

    1.minio查看之前的安装方式

    2.kkFileView安装 docker方式

    1.拉取 docker pull keking/kkfileview

    2.启动 docker run -it -p 9002:8012 --network=host --restart=always keking/kkfileview

    3.浏览器访问容器9002端口(http://xxx.xxx.xxx.xxx:9002)即可看到项目演示用首页

    项目接入使用:

    当您的项目内需要预览文件时,只需要调用浏览器打开本项目的预览接口,并传入须要预览文件的url,示例如下:

    普通文件下载url预览

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

    http/https下载流url预览

    很多系统内不是直接暴露文件下载地址,而是请求通过id、code等参数到通过统一的接口,后端通过id或code等参数定位文件,再通过OutputStream输出下载,此时下载url是不带文件后缀名的,预览时需要拿到文件名,传一个参数fullfilename=xxx.xxx来指定文件名,示例如下

    var originUrl = 'http://127.0.0.1:9002/filedownload?fileId=1'; //要预览文件的访问地址var previewUrl = originUrl +'&fullfilename=test.txt'window.open('http://127.0.0.1:9002/onlinePreview?url='+encodeURIComponent(previewUrl));

    FTP下载url预览

    1). FTP匿名访问

    如果要预览的FTP url是可以匿名访问的(不需要用户名密码),则可以直接通过下载url预览,示例如下

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

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

    如果预览服务只访问一台FTP服务器,只需要在配置文件中 配置FTP链接信息 ,则可以直接通过下载url预览,示例如下

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

    3). 非匿名访问,不只访问一台FTP服务器

    如果预览服务要访问多台FTP服务器,且用户名密码不一致,可以通过在url中加入用户名密码等参数预览(url参数中的优化于配置文件中的),示例如下,

    var originUrl = 'ftp://127.0.0.1/file/test.txt'; //要预览文件的访问地址var previewUrl = originUrl + '?ftp.username=xx&ftp.password=xx&ftp.control.encoding=xx';window.open('http://127.0.0.1:9002/onlinePreview?url='+encodeURIComponent(previewUrl));

    纵有白头俱老意,奈何缘浅路芊芊.
  • 相关阅读:
    麦肯锡 问题分析与解决技巧
    JavaSe_IO流总结
    tcpdump
    interface
    phpexcel 合并单元格后的动态行高
    分布式事务锁的实现
    IntelliJ IDEA 实用快捷键
    Redis安装教程
    ng new my-app创建angular项目是卡住的解决办法
    SqlYog无法连接mysql数据库(包括docker环境)的解决方法
  • 原文地址:https://www.cnblogs.com/hanby/p/15683374.html
Copyright © 2020-2023  润新知