我可以得到从网址加载图像的blob数据?
问题描述:
我想知道是否有可能通过JavaScript已经加载的图像获得blob数据(如base64编码或某物)?我可以得到从网址加载图像的blob数据?
用例是我从一个网页获取一个验证码图像到一个android应用程序。
答
您可以使用Canvas API中的getImageData。例如,请参见https://developer.mozilla.org/En/HTML/Canvas/Pixel_manipulation_with_canvas。所以你可以创建一个画布,将图像渲染到画布上,然后在画布上使用getImageData来获取像素。
尽管如此,一个障碍是相同的原产地政策。如果你解析的图像来自与你的JavaScript相同的域,我认为你很好,但如果图像来自外部源,getImageData将由于相同的源策略而失败。
如果图像来自不同来源并且没有CORS策略允许,则不适用。 – Esailija