使用ajax加载图像的正确方法是什么?
我无法使用通常的canvas.Refresh()
代码作为我必须将一些特定的http标头传递给<img/>
请求。出于这个原因,我有点受限使用Ajax。我必须传递给请求的标头是凭据。没有它,它就无法获得图像文件。
我想知道是否有办法让ajax请求将数据加载到GET
标记中,并仍将img
属性保留为图像的真实网址。我对使用base64数据网址加载图片并不太感兴趣。
答案 0 :(得分:4)
简答....你不能。
您将该图像转换为<img>
标记但仍然传递特定http标头的唯一方法是通过ajax ...并且响应必须是base64数据网址(或者您必须将其转换为您可以将<img>
标记作为src属性的值放入base64数据网址。
只要您更改<img>
标记的src属性,浏览器就会从服务器请求图片...并且它不会传递任何特定标题。
如果要显示图像,则需要<img>
标记(这可以为您提供我提到的限制),或者您可以将其作为任何元素的CSS背景,但同样的限制也适用。只要您设置了网址,浏览器就会加载图片,而不会传递任何自定义标头。