【发布时间】:2020-12-17 06:20:01
【问题描述】:
我有我的功能
function setImg(imgUrl){
img.src = imgUrl
img.onload = function () {
ctx.canvas.width = this.width;
ctx.canvas.height = this.height;
ctx.drawImage(img, 0,0);
updateData(lastData)
};
需要上传图片大小并放入画布中。上传图片需要不记名令牌。
我已经尝试为函数的开头添加广告
img.src = imgUrl + '?access_token=xxxxxxxxxxxx';
但它没有用。我必须用纯 js 来做,我看到了所有其他问题,但没有一个有用。有人可以帮忙吗?
我也尝试在 setImg 里面做
let tmp1;
var oReq = new XMLHttpRequest();
oReq.open("GET", imgUrl, true);
oReq.setRequestHeader("Authorization", "Bearer xxxxxx");
// 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;
tmp1 = "data:"+mimetype+";base64,"+b64encoded;
}
};
oReq.send(null);
img.src = tmp1;
img.onload = function () {
ctx.canvas.width = this.width;
ctx.canvas.height = this.height;
ctx.drawImage(img, 0,0);
updateData(lastData)
};
但是没有用。
【问题讨论】:
-
上传图片需要不记名令牌。设置
img的src意味着您正在下载图像。你能解释一下你想在这里做什么吗? -
这能回答你的问题吗? stackoverflow.com/a/23610549/4699195
-
我必须从imgUrl发出一个get请求,我需要传递承载来完成请求
标签: javascript image token onload bearer-token