mozilla pdfjs跨域问题及压缩优化

来源:互联网 发布:滑板淘宝店 编辑:程序博客网 时间:2024/05/21 14:50

mozilla pdfjs介绍

moziila pdfjs是一款优秀的pdf在线预览、导出、打印插件,但在使用中遇到了跨域问题。

mozilla pdfjs跨域设置

在pdf.js/web/app.js中,1420行,找到

let viewerOrigin = new URL(window.location.href).origin || 'null';//添加这一行    //修改,将当前工程的origin纳入pdfjs的宿主域HOSTED_VIEWER_ORIGINS.push(viewerOrigin);if (HOSTED_VIEWER_ORIGINS.indexOf(viewerOrigin) >= 0) {// Hosted or local viewer, allow for any file locationsreturn;}

这样就是允许所有与本域名不同的请求,客户端js放开了限制,但是服务器端还需要配置CORS(cross origin resource share),请求是发送到腾讯云所以服务端设置可以参考这篇文档

pdfjs文件过大

pdf.worker.js过大问题,下载pdfjs源代码,npm安装依赖后,使用gulp minified 命令压缩js,在build文件夹下生成minified文件夹就是压缩后的,未压缩前1M多,压缩后600多KB
这里写图片描述

参考

https://github.com/mozilla/pdf.js
https://github.com/mozilla/pdf.js/issues/7153
https://github.com/mozilla/pdf.js/wiki/Frequently-Asked-Questions#can-i-load-a-pdf-from-another-server-cross-domain-request

原创粉丝点击