これに関する Facebook のバグトラッカーには、https://developers.facebook.com/bugs/110563582419837 と https://developers.facebook.com/bugs/202119973248747 の 2 つのバグレポートが
あります。
主な理由は、写真が通常の写真アップロード API 経由ではなく、ユーザー生成写真としてOpen Graphアクションに添付されていることです。
そのため、通常の写真のアクセス許可ではそれらへのアクセスが許可されず、アクションを投稿したアプリの Open Graph アクティビティへのアクセスをユーザーに具体的に許可する必要があります。上記のバグ レポートは、ユーザーが作成した写真を使用したアクションの場合は見落としのように見えるという理由で受け入れられますが、設計によるものである可能性もあります。これを行う方法:
ユーザーのために Instagram (または別の Open Graph 写真アプリ) の写真をリクエストする必要がある場合は、そのアプリによって投稿されたアクションにアクセスする許可を求めることができます。
Instagram の写真の場合は、許可を要求することでこれを行うことができますuser_actions:instapp
。これを完了すると、Instagram の写真アルバムが空ではなくなり、Instagram のアクティビティが接続に表示されfeed
ます。
任意のアプリの名前空間を見つけるには、フィールドにアクセスhttps://graph.facebook.com/<APP ID>
して探します。namespace
たとえば、instagram の場合、https://graph.facebook.com/124024574287414/?fields=id,namespace
returns への呼び出し:
{
"id": "124024574287414",
"namespace": "instapp"
}
、、権限で/feed
取得した、私自身の接続からのサンプル写真は次のとおりです。read_stream
user_photos
user_actions:instapp
{
"data": [
{
"id": "[SNIPPED]",
"from": {
"name": "[SNIPPED]",
"id": "[SNIPPED]"
},
"picture": "[SNIPPED]",
"link": "https://www.facebook.com/photo.php?fbid=[SNIPPED]",
"icon": "https://fbstatic-a.akamaihd.net/rsrc.php/v2/yb/x/StEh3RhPvjk.gif",
"privacy": {
"value": ""
},
"type": "photo",
"object_id": "[SNIPPED]",
"application": {
"name": "Instagram",
"namespace": "instapp",
"id": "124024574287414"
},
"created_time": "2013-01-07T17:33:04+0000",
"updated_time": "2013-01-07T17:33:04+0000",
"comments": {
"count": 0
}
},
同じ権限で「Instagram Photos」アルバムの接続にもアクセスでき、/photos
Instagram のすべてのアクション (写真など) にアクセスできます。/me/instapp:take