Javascript 从ajax响应到img标记的base64字符串
我有一个WCF服务,它返回相当于位图图像的base64字符串Javascript 从ajax响应到img标记的base64字符串,javascript,jquery,html,ajax,wcf,Javascript,Jquery,Html,Ajax,Wcf,我有一个WCF服务,它返回相当于位图图像的base64字符串 return Convert.ToBase64String(ImgBytes); 我正在使用ajax调用此服务。代码类似于 jQuery.ajax({ url: MY_SERVICE_URL, type: "GET", dataType: "html", success: AjaxSucceeded, error: AjaxFailed }); function AjaxSucce
return Convert.ToBase64String(ImgBytes);
我正在使用ajax调用此服务。代码类似于
jQuery.ajax({
url: MY_SERVICE_URL,
type: "GET",
dataType: "html",
success: AjaxSucceeded,
error: AjaxFailed
});
function AjaxSucceeded(result, textStatus, request) {
var binary = "";
var responseText = request.responseText;
var responseTextLen = responseText.length;
for (i = 0; i < responseTextLen; i++) {
binary += String.fromCharCode(responseText.charCodeAt(i) & 255);
}
$("#myimage").attr("src", "data:image/jpg;base64," + btoa(binary));
}
我尝试过搜索各种论坛。但不幸的是,我无法理解这一点。我错过什么了吗
提前感谢。如果您使用的是jquery,应该这样使用
$("#myimage").attr("src","data:image/jpg;base64," + "Qk02EA4AAA....")
您还可以使用这个更短的代码段
$.get(MY_SERVICE_URL, function (base64string) {
$("#myimage").attr("src", "data:image/jpg;base64," + base64string);
});
假设
MY\u SERVICE\u URL
只发送返回Convert.ToBase64String(ImgBytes)的准确结果代码>>/9j/4AAQSkZJRgABAQEASABIAAD/2wBD….
感谢大家的支持。我能挺过去
这就是我所做的
jQuery.ajax({
url: MY_SERVICE_URL,
type: "GET",
dataType: "json",
success: AjaxSucceeded,
error: AjaxFailed
});
function AjaxSucceeded(response) {
$("#myimage").attr("src", "data:image/jpg;base64," + Response.GetCurrentFrameResult);
}
ajaxSuccessed
中发生了什么。您确定您正在从我的服务\u URL
获取数据吗?@VDWWD:是。。我对此很有把握。我能够记录响应值,并在“”中使用相同的函数来显示完整的AjaxSucceededIt
函数。请查找使用AjaxSucceededIt更新的查询,其显示方式好像您正在获取base64字符串并将其字节值转换为base64,这将不会有用。您是否尝试过$(“#myimage”).attr(“src”,“data:image/jpg;base64,”+response.text)代码>?仅当我使用“data:image/jpg;base64”+“Qk02EA4AAA…”时,此选项才有效。但是如果我使用“data:image/jpg;base64”+btoa(二进制)作为“”,它就会失败。我能看到完整的wcf响应吗?请在“尝试在ajax中使用数据类型:”json“的登录中找到,成功的方法是使用data.GetCurrentFrameResult
jQuery.ajax({
url: MY_SERVICE_URL,
type: "GET",
dataType: "json",
success: AjaxSucceeded,
error: AjaxFailed
});
function AjaxSucceeded(response) {
$("#myimage").attr("src", "data:image/jpg;base64," + Response.GetCurrentFrameResult);
}