Facebook graph api RestFB-图片URL格式不正确

Facebook graph api RestFB-图片URL格式不正确,facebook-graph-api,restfb,Facebook Graph Api,Restfb,我正试图使用RestFB在我的facebook页面上发布一篇帖子 我的代码如下: FacebookType publishResponse = facebookClient.publish(pageId + "/feed", FacebookType.class, Parameter.with("message", message), Parameter.with("picture", picture),

我正试图使用RestFB在我的facebook页面上发布一篇帖子

我的代码如下:

FacebookType publishResponse =  facebookClient.publish(pageId + "/feed", FacebookType.class,
                Parameter.with("message", message),
                Parameter.with("picture", picture), 
                Parameter.with("link", link), 
                Parameter.with("description", description));
我的参数具有以下值:

message: Test+test+test
picture: https%3A%2F%2Fcom-smallteaser-local-photo.s3.amazonaws.com%2Fskydivemag%25232fdefcfa-c7b2-4c0d-8504-9942ccd9a4b0%2523648%25230%25232592%25232592%2523292%2523292
link: http%3A%2F%2Flocalhost%3A9000%2Farticle%2F20130503-test-test-test
description: This+is+just+a+test
我得到一个例外:

FaceBookOAutheException:收到类型为OAutheException:(#100)的Facebook错误响应图片URL格式不正确]

我读到,我可以添加一张图片,只需提供一个URL,它明确表示,这是为“在Amazon S3或类似服务上托管图片的应用程序开发人员”设计的


知道我做错了什么吗?

我认为这实际上不是图片URL的“格式”,而是它返回的内容:

它提供了一个
内容类型:application/octet stream
response header()——这可能会让facebook觉得这不是真正的图像资源


因此,您必须弄清楚如何配置您的主机空间,以使用正确的
内容类型交付这些图像,例如
img/jpeg
img/png

我遇到了这个问题,但仅在较旧的Android设备上,而不是在桌面上。我可以从服务器日志中看出有一点不同:

  • 访问桌面上的URL时,Facebook会请求图片URL
  • 在较旧的Android设备上访问URL时,Facebook不会请求图片URL
事实证明,我在构建绝对URL时使用了
window.location.origin
,据我所知,绝对URL仅适用于Webkit。正如《华盛顿邮报》所说,通过更换

window.location.origin

好的,我现在用的是图像,但我得到了完全相同的错误,所以我猜一定是别的什么地方出错了?
window.location.protocol + “//” + window.location.hostname