我想要做的是使用jQuery来请求图像(在这种情况下是图形)。
在jQuery中,我在我的图像上设置了src
属性,它按照预期从服务器下拉图形。
$("#graphImage").attr("src", graphUrl);
我希望能够使用此请求发送一些Header信息并让jQuery读取它。
我该怎么做?我的一个朋友建议使用ajax将图像下载到blob然后将blob写入图像标记...不确定如何做到这一点。
答案 0 :(得分:2)
尝试使用非IE浏览器<为了
$.ajax({
url: graphUrl,//This will be a page which will return the base64 encoded string
headers: {},//Pass the required header information
success: function(response){
$("#graphImage").attr("src", response);
}
});
将图片转换为base64字符串的代码
public string ImageToBase64(Image image,
System.Drawing.Imaging.ImageFormat format)
{
using (MemoryStream ms = new MemoryStream())
{
// Convert Image to byte[]
image.Save(ms, format);
byte[] imageBytes = ms.ToArray();
// Convert byte[] to Base64 String
string base64String = Convert.ToBase64String(imageBytes);
return base64String;
}
}
答案 1 :(得分:2)
我不知道如何读取加载图像的响应,但拉动响应标题是直截了当的。
jQuery.ajax({
url: '/img/foo.gif',
complete: function (jqXHR, textStatus) {
var h = jqXHR.getResponseHeader('Content-Type');
alert(h);
}
});