为了账号安全,请及时绑定邮箱和手机立即绑定

echart图片导出到iframe中,出现跨站

echart图片导出到iframe中,出现跨站

慕码人2483693 2018-11-13 13:13:01
我想将echart的导出图片导出到iframe中,但是出现了跨域,应该如何修复?用的echart提供的myChart.getDataURL()方法。
查看完整描述

1 回答

?
神不在的星期二

TA贡献1963条经验 获得超6个赞

通常, 图片允许跨域访问, 也可以在canvas中使用跨域的图片, 但这样做会污染画布, 一旦画布受污染, 将无法读取其数据. 比如无法调用 toBlob(), toDataURL() 或 getImageData()方法.
浏览器的这种安全机制规避了未经许可的远程服务器图片被滥用的风险.
因此如需在canvas中使用跨域的图片资源, 请参考如下apache配置片段

<IfModule mod_setenvif.c>

    <IfModule mod_headers.c>

        <FilesMatch "\.(cur|gif|ico|jpe?g|png|svgz?|webp)$">

            SetEnvIf Origin ":" IS_CORS

            Header set Access-Control-Allow-Origin "*" env=IS_CORS

        </FilesMatch>

    </IfModule>

</IfModule>

echart本身使用的就是canvas技术,跨域是由canvas安全性机制引起的,建议更换图片源。

查看完整回答
反对 回复 2018-12-10
  • 1 回答
  • 0 关注
  • 817 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号