gpt4 book ai didi

javascript - 如何在 Image() 构造函数中发送 cookie

转载 作者:行者123 更新时间:2023-12-03 08:28:21 28 4
gpt4 key购买 nike

我正在将图像注入(inject)到 Canvas 中,我必须通过随我的请求传递 cookie 来安全地获取该图像。我的问题是,当设置 src 时,Image 构造函数似乎没有随请求发送 cookie。 cookies不能通过js访问,它们是由浏览器发送的。

var img = new Image();
img.setAttribute('crossOrigin', 'anonymous');

validateUrl(originalUrl, function (validatedUrl) {
img.src = validatedUrl; //GET fails after this happens
});

img.onload = function () {
drawImageProp(context, img);
}

最佳答案

如果您在图像上设置了 crossorigin 属性,则 Cookie 不会随图像请求一起发送。这就是该功能的编写方式。

Cookie 与特定域/子域相关联(并且可以选择与该域内的路径相关联)。请求图像时,请求图像的域的任何 cookie 将自动与图像请求一起发送。

浏览器仅允许 Javascript 访问与主机网页同源的 cookie。因此,Javascript 无法读取其他域的 cookie。

因此,当您通过设置 .src 属性请求图像时,属于图像 URL 域的任何 cookie 将自动随图像请求一起发送(您无需执行任何操作)导致这种情况)。

关于javascript - 如何在 Image() 构造函数中发送 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33445659/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com