我遇到了一个非常不寻常的问题,在页面刷新时,上一页刷新加载的所有个人资料图片不再加载。相反,加载的每个图像都会在控制台中导致这些错误:
资源解释为图像,但使用 MIME 类型文本/javascript 进行传输。 无法加载资源:服务器响应状态为 400(错误请求)
特别奇怪的是,如果我在一个页面上说有3张图片A B和C。如果在下一页上我有5张图片,包括最后的A B和C,则只会加载D和E。如果我刷新,则只会加载 A、B 和 C。这可以永远重复!
有什么想法可以解释这一点吗?
PS。不首先链接我的应用程序,因为我认为没有必要,但如果需要,我会这样做。
由于通过 graph api 加载个人资料图片实际上是一种间接方式,如果 facebook svr 无法处理您的请求(为您提供实际的 pro 文件位置),就会出现问题。
我建议首先通过 fql/graph api 获取用户个人资料图片的静态链接,然后在您的应用程序中使用它。 这实际上也会提高你的应用程序的性能(通过图形 API 显示个人资料图片很慢)。
我也遇到过同样的问题。这已经不是第一次了。我的解决方案是缓存图形 API 重定向到的 URL。此 URL 从未出现过问题(托管在相当可靠的 CDN 上)。
我刚刚遇到了这个问题,在个人资料图片上交替出现错误请求:在仔细检查请求标头和应答标头时,我发现 Facebook 不允许 P3P 查询的提示(不再允许?我认为它在我的上一个应用程序上工作)。
所以,如果你在某个地方有这样的声明
header('P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"');
只需将其删除,也许在清除浏览器缓存和/或 Web 框架缓存后,它应该可以工作(如果这确实是问题所在,而且并非巧合的是 Facebook 的某个错误)。