如何获取图像类型,如果它的src没有'

HtmlImageElement - how to get image type if its src doesn't have extension

本文关键字:src 没有 如果 何获取 获取 类型 图像      更新时间:2023-09-26

是否有可能获得图像类型(gif, png, jpeg等)与src这样?

<img src="http://d1aviatl7dpuhg.cloudfront.net/image/url/64/aHR0cDovL3BpeGNtc2FkbWluLnBpeGFibGUuY29tL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE1LzA3L3NoYXJrLmpwZw==">

或由new Image()构造函数创建。

没有发现任何有用的W3规格

我想,一个单独的"XHR得到src"是一种解决方案,但也许有一个更好的方法?

更新:由于CORS,各种xrh都失败了,所以ajax在这里不起作用。

当在扩展(没有CORS限制)中运行时

我一直在探索同样的问题,有效的方法是:

  1. 从给定的图像src下载图像作为blob
  2. blob的图像类型为blob.type
代码示例(带有async/await和fetch API):
async function getImageBlob(imageUrl) {
    const response = await fetch(imageUrl)
    return response.blob()
}
const blob = await getImageBlob("http://path.to.image.com")
blob.type // Image Content-Type (e.g. "image/png")

http://www.andygup.net/easily-find-image-type-in-javascript/

我想你可以从这个页面得到一些帮助。