使用ajax加载图像的正确方法是什么?
我不能使用通常的<img/>
标签作为我必须将一些特定的http头传递给GET
请求。由于这个原因,我只能使用Ajax。我必须传递给请求的报头是凭据。没有它,就不可能获得图像文件。
我想知道是否有一种方法可以使ajax请求将数据加载到img
标记中,并且仍然保持src
属性作为图像的真实url。我对使用base64数据url加载图像不太感兴趣。
简短回答....你不能。
唯一的方法,你要得到图像进入<img>
标签,仍然通过特定的http头是通过ajax…并且响应必须是一个base64数据url(或者您必须将其转换为base64数据url),您可以将其作为src属性的值放入<img>
标记中。
只要你改变了<img>
标签的src属性,浏览器就会从服务器请求图像…它不会传递任何特定的头信息。
如果你想显示图像,你需要一个<img>
标签(这给了你我提到的限制),或者你可以把它作为任何元素的css背景,但同样的限制适用。一旦你设置了url,浏览器就会加载没有任何自定义标题的图像。