java – Img src路径,带有头部参数传递
作者:互联网
我在jsp页面中有一个img标签,其中src路径需要传递头参数来获取图像.我们怎样才能实现它?
解决方法:
首先,您需要创建一个设置标头的ajax请求.然后,您需要使用一些HTML5 API将收到的二进制数据转换为base64.最后,使用data:protocol和base64数据设置图像src.
var oReq = new XMLHttpRequest();
oReq.open("GET", "yourpage.jsp", true);
oReq.setRequestHeader("Your-Header-Here", "Value");
// use multiple setRequestHeader calls to set multiple values
oReq.responseType = "arraybuffer";
oReq.onload = function (oEvent) {
var arrayBuffer = oReq.response; // Note: not oReq.responseText
if (arrayBuffer) {
var u8 = new Uint8Array(arrayBuffer);
var b64encoded = btoa(String.fromCharCode.apply(null, u8));
var mimetype="image/png"; // or whatever your image mime type is
document.getElementById("yourimageidhere").src="data:"+mimetype+";base64,"+b64encoded;
}
};
oReq.send(null);
资料来源:
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Sending_and_Receiving_Binary_Data
How to convert uint8 Array to base64 Encoded String?
标签:javascript,java,ajax,prototypejs 来源: https://codeday.me/bug/20190930/1836622.html