uniapp 在h5中预览pdf hybrid方法

uniapp 在H5中预览PDF的Hybrid方法技术

直接把hybrid文件放置在static文件下,hybrid文件下载地址

https://pan.baidu.com/s/1FsRAvrD2WkDHWUVwrHKE4A 提取码: 8888

页面当中使用方法 接口当中返回的类型是文件流类型

javascript 复制代码
<template>
	<view>
    	<web-view :src="allUrl"></web-view>
	</view>
</template>

<script>
 export default {
	data() {
		return {
       		allUrl: '',
       		indexName: '',
       		id: ''
		}
	},
  onLoad(option) {
    this.indexName = option.indexName
    this.id = option.id
    this.getPdf() 
  },
  methods: {
      getPdf() {
				uni.request({
					url: uni.getStorageSync('requestBaseUrl') + '/search/api/DownLoadDoc?fileType='+'pdf'+'&dataid='+ this.id+'&index='+this.indexName,// 请求的接口地址以及传参
					responseType: 'arraybuffer', //这里记得设置响应数据格式,不然预览的pdf是空白
			        header: {
			            'lawToken': uni.getStorageSync('lawToken') // 此处是接口当中需要的token,按自己情况修改
			        },
					success: (response) => {
						if (!response) {
							uni.showToast({
								title: "预览失败",
								duration: 2000
							});
						}
						let pdfData = response.data; //pdfData是后端返回的文件流
						let blob = new Blob([pdfData], {
							type: 'application/pdf'
						})
						pdfData = window.URL.createObjectURL(blob) //创建预览路径  
							//路径是hybrid放置的路径!!!!
            			this.allUrl = `/static/hybrid/html/web/viewer.html?file=${encodeURIComponent(pdfData)}`
          			},
					fail: err => {
						console.log(err)
					} 
       			 });
        
			}
    	}
	}
</script>
<style lang="less" >
</style>

如果本地运行没问题,打包部署以后报mjs文件错误,需要后端配置MIME type文件,可参考这篇文档https://cloud.tencent.com/developer/article/2444748

如果是IIS部署的 可以参考这个 添加.mjs和.ftl配置项

相关推荐
AI_AGENT_DEV_AI12 分钟前
原生 APP 开发的开发优点
uni-app
JackieDYH12 小时前
uniapp-通知滚动组件+轮播图组件封装-案例
uni-app·轮播图·通知
XLYcmy15 小时前
pdf论文处理:CSV输出模式
数据库·python·pycharm·pdf·论文·csv·dify
2501_915921431 天前
appuploader-cli 命令行上传 IPA 到 App Store Connect upload CI 集成
android·ci/cd·小程序·https·uni-app·iphone·webview
结网的兔子2 天前
【前端开发】UniApp 项目地图选型与Web-APP跨端迁移方案
前端·uni-app
SamChan902 天前
用Python+Requests批量翻译PDF:从脚本到调度
后端·python·microsoft·ai·pdf·机器翻译
SamChan902 天前
PDF翻译API的JWT签名鉴权与速率限制设计:安全实战指南
网络·安全·pdf
Web打印2 天前
gridreport导出后的pdf只支持①到⑨,然而⑩之后的不支持_gwj_20260811_122323.docx
pdf
2501_916007472 天前
Bundle ID 注册与管理 App ID 创建指南 命名规则 权限开关与删除注意事项
android·ios·小程序·https·uni-app·iphone·webview
AmyLin_20012 天前
PDF 脱敏技术【1】:PDF 脱敏不是盖黑框:为什么敏感信息仍能被复制,正确的保护方式是什么?
安全·pdf·sdk·脱敏·文档安全·pdf 脱敏·智能脱敏