私は Facebook Canvas アプリケーションに取り組んでいます。アプリケーションの目的は、ユーザーのアカウントにアクセスし、投稿を収集し、投稿が写真タイプであることをプレビューすることです。
また、同じユーザーが他のユーザーの投稿を見ることもできます。
ユーザーが他のユーザーの投稿を見ている場合、一部の投稿のプレビューで、投稿の画像ではなく疑問符の画像が表示されます。ユーザーが投稿を直接開いて Facebook ページを投稿すると、画像が表示されます。
Graph API を使用して、投稿からプレビュー用の写真を取得しています。現在の構文は
https://graph.facebook.com/<OBJECT_ID>/picture?type=normal&access_token=<ACCESS_TOKEN>
ページアクセストークンと長寿命のユーザーアクセストークンを使用しようとしました。どちらの場合も、疑問符の画像が表示されました。
私の質問は次のとおりです。
- ユーザーが写真に許可を与えたときに、アプリケーションを介して実際の画像を見ることができないのはなぜですか?
- 画像が疑問符の絵かどうかを検出することは可能ですか?
EDIT 投稿IDではなく、OBJECT_IDを使用します。プレビューは写真投稿用です。投稿の object_id は、pictures Graph API で使用できる画像 ID です。
EDIT 2 Graph APIのみを使用する必要があり、他には何も使用しないでください。
編集 3 これらは、ユーザーから要求されるアクセス許可です: 「email」、「user_photos」、「manage_pages」、「read_stream」、「read_insights」、「user_hometown」、「user_location」、「user_birthday」。