|
后台返回的图片BASE64无法显示(正常运行)?
前端:
Model.prototype.button3Click = function(event) {
var url = "http://192.168.1.111.........";
var smallImage = document.getElementById(this.getIDByXID('image1'));
$.ajax({
type : "GET",
url : url,
dataType : "text",
success : function(data) {
debugger;
data = data.replace("%2B", /\+/g);
data = data.replace("%26", /\&/g);
//????????????????????????????????????????????????????????????????????????????????????????
smallImage.src = "data:image/jpeg;base64," + data;//无法显示图片
//????????????????????????????????????????????????????????????????????????????????????????
},
error : function(error) {
alert('由于网络原因,上传失败。');
}
});
};
后端:
context.Response.ContentType = "text/plain";
string s = HttpContext.Current.Server.MapPath(@"~/AAA//pp.jpg");
string base64 = ImgToBase64String(s);
base64 = base64.Replace("+","%2B");
base64 = base64.Replace("&","%26");
context.Response.Write(base64);
context.Response.End();
//图片转为base64编码的字符串
protected string ImgToBase64String(string Imagefilename)
{
try
{
System.Drawing.Bitmap bmp = new System.Drawing.Bitmap(Imagefilename);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] arr = new byte[ms.Length];
ms.Position = 0;
ms.Read(arr, 0, (int)ms.Length);
ms.Close();
return Convert.ToBase64String(arr);
}
catch (Exception ex)
{
return null;
}
}
|
|