在线预览项⽬kkFileView(⼀)项⽬搭建与使⽤
由于项⽬需要在线预览 开始想⾃⼰实现 如上⽂
但是也想弄⼀份html格式的 但是格式总是达不到理想 所以使⽤了 kkFileView
1. kkFileView介绍
kkFileView是git的开源(不花钱)在线预览项⽬ ⽀持格式:doc、docx、ppt、pptx、xls、xlsx、zip、rar、mp4、mp3以及众多类⽂本如txt、html、xml、java、properties、sql、js、md、json、conf、ini、vue、php、py、bat、gitignore
所以优点是 免费 好搭建 (感谢作者)
2.安装下载
可以在以上地址下载到windows版本和linux版本
3.配置
下载到包后解压 项⽬中的配置都是可改变的 配置⽂件在下图 (linux同理)
可以好好查看 可配置项 我这⾥只改变了上传的⽂件路径 为了统⼀的清除临时⽂件
4.启动
进⼊以下⽂件夹
window:双击startup.bat或者cmd - 输⼊startup.bat
linux:./startup.sh (这⾥我是⽤的CentOS Linux release 7.7.1908 (Core) 启动会⾃动下载 项⽬需要的插件 如:openoffice)
5.调⽤
我这⾥使⽤了这种⽅法 第⼀⾏也就是提供了⼀个下载⽂件的接⼝ 在response中返回流 代码如下 然后在vue中调⽤open⽅法就可以了
var previewUrl = 127.0.0.1:8080/filedownload?fileId=1+'&' 提供⼀个下载⽂件接⼝
window.open('127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(previewUrl));
/**
* 线上预览使⽤为预览服务器提供下载流
*
* @param fileMessage
* @return
*/
@GetMapping("/onlineDownloadFile")
public String onlineDownloadFile(FileMessage fileMessage) {
// 获取HttpServletResponse
HttpServletResponse response =
((RequestAttributes()).getResponse(); String route = FileRoute();
String fileName = Fullfilename();// ⽂件名
if (fileName != null && route != null) {
// 设置⽂件路径
File file = new FileRoute() + "/" + fileName);
if (ists()) {
// 设置HTTP响应头
try {
OutputStream os = OutputStream();
// 读取⽂件
InputStream in = new FileInputStream(file);
// copy⽂件
in.close();php项目搭建
os.close();
return "下载成功";
} catch (Exception e) {
e.printStackTrace();
}
}
}
return "下载失败";
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论