S3 バケットのアクセス許可に関連しているように見える Facebook SDK でエラーが発生しています。ストレージ用に Amazon S3 で Paperclip gem を使用して Ruby on Rails を使用しています。
現在、次のようなダイアログ設定があります。
FB.ui({
method: 'feed',
name: "Check out this project on WorkHands",
picture: "https://workhands_images.s3.amazonaws.com/images/avatars/1100/original/2013-08-05_04_13_28__0000.jpeg?1376351034",
link: link.attr('href'),
caption: 'Work by',
description: "hello",
display: 'popup',
redirect_ui: window.location.origin
}
S3 と関係があると思う理由は、S3 にない別の src から (Google 画像からでも) 画像の URL を渡すことができ、ダイアログが完全に正常に機能するためです。
私の理解では、Paperclip はデフォルトで各オブジェクトの ACL を public_read に設定します。https://github.com/thoughtbot/paperclip/blob/master/lib/paperclip/storage/s3.rb
ここの例のようなバケット ポリシーを設定しようとしました: http://ariejan.net/2010/12/24/public-readable-amazon-s3-bucket-policy/
しかし、それは何も修正していないようでした。
上の画像の場合、 を呼び出すとs3object.acle.grants.inspect
、次のような XML が取得されます。
[<Grant><Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\"><ID>0e77d1de2a82b95d7b735e0071296ef5f903fa17ba0b98ecfe5ab2d36a8f17d0</ID>
cush4437FULL_CONTROL、http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"Group\"> http://acs.amazonaws.com/groups/global/AllUsers READ]