jsPDF+html2canvas中阿里云OSS网络图片渲染报跨域问题,生成pdf文件不显示图片解决方案
问题分析:访问使用 OSS 默认域名生成的文件 URL 会触发浏览器默认强制下载。(思路错了)
尝试步骤:
1.在阿里云oss配置选择对应的文件,设置文件元数据
2.Bucket 配置-域名管理:绑定域名实现通过域名访问url图片。——无效
3.权限控制-读写权限:改为公共读。——无效
4.在img标签添加:crossorigin="anonymous" src地址后跟随机数时间戳;——无效
<img crossorigin="anonymous" :src="avatarSrc_url.avatarUrl+'?a='+new Date().getTime()" alt="" />
html2canvas(canvasID, { useCORS: true, allowTaint: true, })
5.根据查看浏览器控制台报错信息:Access to image at ‘xxxx’ has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
在OSS配置中修改数据安全-跨域设置-创建规则来源为:【*】或者域名【*.test.com】或者ip+端口(*)【http://192.168.1.1:*】 ——生效
总结:需要同时设置3、4、5
相关文章推荐:

浙公网安备 33010602011771号