使用 ajax 加载图像的正确方法是什么?
我不能使用通常的 <img/>
标记为 我必须将一些特定的 http header 传递给 GET
请求。 出于这个原因,我在某种程度上仅限于使用 Ajax。我必须传递给请求的 header 是凭据。否则,将无法获取图像文件。
我想知道是否有办法发出 ajax 请求将数据加载到 img
中标记并仍然保留 src
属性作为图像的真实 url。我对使用 base64 数据 url 加载图像不太感兴趣。
最佳答案
简答....你不能。
将图像放入 <img>
的唯一方法标记并仍然通过 ajax 传递特定的 http header ...并且响应必须是可以放入 <img>
的 base64 数据 url(或者您必须将其转换为 base64 数据 url)标记作为 src 属性的值。
一旦您更改了 <img>
的 src 属性标记,浏览器将从服务器请求图像...并且它不会传递任何特定的 header 。
如果你想显示图像,你需要一个 <img>
标签(给你我提到的限制)或者你可以把它作为任何元素的 css 背景,但同样的限制适用。一旦您设置了 url,浏览器就会加载图像,而不会传递任何自定义 header 。
关于javascript - 使用带有自定义 header 的 Ajax 加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30500433/