我在这上面阅读了一些帖子,但似乎没有任何帮助。我有一个ajax客户端,它从Jetty服务器上运行的远程Web服务中检索图像。如果我使用浏览器(Firefox等),则检索成功显示。如果我使用ajax脚本,图像将显示为一堆不可读的字符。是否需要在ajax情况下以某种方式从服务器发送图像?我尝试了许多不同的方法,包括数据URI,但似乎没有任何工作。有任何想法吗?我将不胜感激。 Thakns。
答案 0 :(得分:1)
实际上异步获取图像是使用javascript实现它的字面方式:
var img = new Image();
img.src = "http://your img uri";
document.getElementById("image_container").appendChild(img);
不需要XHR类型的AJAX来获取它。
如果您需要成功回调,可以在img.src
定义之前添加它:
img.onload = function() { /* ... */ }
答案 1 :(得分:0)
AJAX中的X代表XML。所以结果基本上是文本。 您可以更改此设置,但取决于使用的框架。像jQuery
一样也许你正在尝试做一些不需要AJAX的事情。 或者您AJAX只检索该图像的URL。
如果您已将IMG DOM对象实例化为var:
var img = document.getElementById('my_img');
你已经拥有了图片路径(即:'/ img / img.jpg')
试
img.src='/img/img.jpg';