javascript - 使用带有自定义 header 的 Ajax 加载图像

标签 javascript ajax image http-headers

使用 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/

相关文章:

java - 在图像前面添加 JTextArea

javascript - 访问被点击的元素

javascript - 子排序时如何获取父id

javascript - ReactJS 中的多语言网站

jquery 函数与 Ajax 在 Chrome 和 Opera 中失败

javascript - jQuery检查图像是否存在,如果头404而不是隐藏它

javascript - 如何在 firebase 中手动拍摄多个快照

javascript - 具有不同 ID 的 HTML 表正在从 AJAX 回调接收相同的值

objective-c - 快速实现 Objective-C 设置图像舞会 Facebook 登录

php - 使用 PHP 缩放图像并保持纵横比