gpt4 book ai didi

html - CORS:Facebook 是否为其所有图片启用了 CORS?

转载 作者:太空狗 更新时间:2023-10-29 13:26:42 27 4
gpt4 key购买 nike

我在某处读到 Facebook 已为个人资料图片启用交叉功能。我不确定相册和其他东西,但事实上 Facebook 包含标题 Access-Control-Allow-Origin: *在我迄今为止测试过的每个 URL 上。

我试过标准的个人资料图片 URL

https://graph.facebook.com/PROFILE_ID/picture?width=25&height=25 

以及 Akamai 网址:

https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-ash3/... 

(后者由 https://graph.facebook.com/PROFILE_ID/photos 返回)


我的应用基本上在做以下事情:

var img = new Image;
img.src = "https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-ash3/...";
img.crossOrigin = "Anonymous";

img.onload = function() {
ctx.drawImage(img, x, y);
}

// Above code will be repeated several times
// And mixed with code that manipulates ctx

// Finally generetes data
var generatedImage = canvas.toDataURL();
// And post if back to Facebook

我的代码似乎一切正常(在所有主要浏览器上测试),但有很多用户报告在将 Canvas 内容上传回 Facebook 时出现间歇性错误。不幸的是,我还无法让精通技术的用户报告带有正确错误描述的内容。现在我无法重现问题(甚至不知道问题是什么)。

到目前为止,我所知道的是,通过编写一个服务器端代理来提供 Facebook 图片,就好像它们是本地的一样,错误显然消失了,所以,在我开始深入研究奇怪的跨浏览器问题之前,这让我感到疑惑,神秘错误消息,例如 OAuthException: An unknown error has occurred. ,受污染的卡瓦等,我首先要回到基础:

是否为通过 Graph API 公开的每张图片启用了 CORS? (官方文档或可靠来源的链接会很好)。

最佳答案

再次回答我自己的问题。

显然,通过 Graph API 公开的每张图片都启用了 CORS。它们都以 Access-Control-Allow-Origin: * 返回。

似乎某些浏览器不能很好地处理 crossorigin='anonymous' 和 CORS header ,因此,目前,代理服务仍然是安全的方式。

关于html - CORS:Facebook 是否为其所有图片启用了 CORS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21734544/

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