uniapp 在微信H5、安卓、IOS预览PDF

前言

uniapp在微信内通过链接预览PDF,而现有uniapp插件都是通过在线网站解析例如:

mumu-previewOffce


但解析网站目前已经不能访问

准备工作

下载PDF.JS https://github.com/mozilla/pdf.js/releases/download/v2.4.456/pdfjs-2.4.456-dist.zip 高版本会有奇奇怪怪的问题

放置在uniapp根目录static下并自行建立文件夹 例如:D:/Project/static/PDFView 并解压

使用问题

PDF.js 源码不支持文件跨域 如出现报错 可在viewer.js中找到以下代码并进行注释就可以解决

// 报错信息
file origin does not match viewer


// 注释源码  举例:D:/Project/static/PDFView/web/viewer.js  

// if (origin !== viewerOrigin && protocol !== "blob:") {
//   throw new Error("file origin does not match viewer's");
// }

文件CORS跨域

在浏览器访问如果打开还是一片空白的情况,看看是不是PDF文件是不是设置了不允许跨域访问、如果没有配置CORS 则需要配置PDF所在目录的CORS,例如:

location /upload/ {  
	add_header Access-Control-Allow-Origin *;
	add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
	proxy_pass <http://xxx.xxx.xxx>;
}
posted @ 2024-08-07 10:59  Hekiss  阅读(13)  评论(0编辑  收藏  举报