html2canvas OnRender将失败,因为跨域图像(html2canvas OnRende

2019-10-18 06:24发布

我想通过html2canvas当前页面的屏幕截图。 但是,代码显示“点击这里”,然后停止第二警报功能不触发

alert("here");
html2canvas(instance.element, {
    onrendered: function(canvas) {
        alert("here");
        instance.options.onPostRender(canvas)

在萤火虫出现以下错误:

"NetworkError: 404 Not Found - http://html2canvas.appspot.com/?url=https%3A%2F%2Fwww.otherdomain.com%2Flivezilla%2Fimage.php%3Fid%3D08&callback=html2canvas_1"

我认为它是因为图像是从另一个域名,但我没有找到任何解决方案。

Answer 1:

我认为你需要一个代理才能使用跨浏览器的图像。 html2canvas允许你使用代理服务器上的设置:

html2canvas(instance.element, {
proxy: 'yourProxyPageOnTheSameServer.php',
onrendered: function(canvas) {
    alert("here");
    instance.options.onPostRender(canvas)

这里有一个在PHP代理: https://github.com/brcontainer/html2canvas-php-proxy



文章来源: html2canvas OnRender failed because of cross domain images