问题描述

希望通过iframe标签实现对pdf文件的在线预览,打开后却直接触发下载行为

<iframe
:src="previewUrl"
width="100%"
height="100%"
></iframe>

原因分析

原因是上传文件时,参考官方文档,增加了请求参数​​Content-Disposition​​, 导致每次打开连接浏览器都会直接下载

const headers = {
// 指定该Object被下载时的名称。
'Content-Disposition': encodeURIComponent(file.name)
}

问题解决

不传请求头​​Content-Disposition​​ 即可

const headers = {}

参考
​​​阿里云osspdf预览问题​