我有一些页面显示图书信息,它们使用外部封面服务器获取封面,并将适当的url放在img元素的src属性中。
封面服务器没有所有的封面,所以它通常会返回一个默认的空白封面。
我需要一种方法来知道,javascript端,一旦页面加载,封面服务器返回的封面是否是默认的空白图像,以便用自定义html代码替代默认的空白图像。所以我试着为封面图像计算一个唯一的标识符。
我考虑使用画布的drawImage方法,然后获取canvas.toDataUrl的散列,但后者返回一个安全异常,因为图像来自外部服务器。
你有什么更好的(和工作的)想法来实现我的目标吗?
发布于 2011-09-20 20:56:16
不能在客户端完成。如果一个域的脚本能够查看来自另一个域的图像的内容,这将是一个安全漏洞(跨站点脚本)。
您必须在第三方服务器上使用单独的服务查找信息,或者在服务器端获取图像并将其与填充映像进行比较。(建议首先使用HEAD请求检查长度,看看是否与填充图像的已知长度相匹配,以提高速度。)
发布于 2011-09-20 21:06:19
也许您可以为封面图像执行一个XmlHttpRequest,比如HEAD请求,然后查看ETag头值(或者内容-md5或其他什么)。
发布于 2011-09-20 21:11:33
空图像的宽度和高度是否与正常图像不同?如果是这样的话,请用它作为指南。
https://stackoverflow.com/questions/7491366
复制相似问题