【发布时间】:2017-12-23 18:20:57
【问题描述】:
我无法解决我提出的 AJAX 请求问题(顺便说一下,我是 AJAX 新手)。我有一个 API 设置,我想使用授权标头检索 png 图像,该标头使用我提供的令牌(存储在本地存储中)。因此,例如,如果我要使用 Auth 标头访问图像,那么我会这样做......
$.ajaxSetup({headers: {"Authorization" : localStorage.token}});
我能够检索图像。我可以在 Chrome 的“网络”标签中看到它,但是当我使用下面的这个将它附加到我的 div 时...
$.ajax({
//Use commas for several parameters
type: 'GET',
url: *url of image*,
contentType: 'image/png',
success: function (data) {
binary = data;
$("#image").attr("src", 'data:image/png;base64,'+ data);
}
...它以这种奇怪的字符格式出现(如下所示):
div id="image" src="data:image/png;base64, PNG
IHDRww^ÀþIDATxÚìÝ|ÔWº?þ½¿ÿ½Ý.ÅâÉd2îdâ®BB ÁÝÝ )îÞbÅÝ¥TÐzi)Ô ÞRÙn»rï]»+w·{þçùÌ
我希望它以图像或 b64 字符串的形式返回,我可以简单地将其放入 src 参数中。我在网上到处搜索,似乎找不到答案。
有什么想法吗?非常感谢您的宝贵时间。
【问题讨论】:
-
作为
data在success处理程序中得到什么? -
我得到“�PNG...etc”,其中包含大量“�”菱形字符
标签: javascript jquery html css ajax