8

私はPHPでFacebook用のアプリを開発しています。その一部にはユーザーの「いいね」がリストされています。各いいねの横にリンクを追加して、ユーザーが適切と思われる場所でいいねを削除して管理できるようにします。

Facebookは、グラフAPIドキュメントでこれについて言及しています。

/ POST_ID / likesにDELETEリクエストを発行することで、likeを削除できます(likesにはIDがないため)。

しかし、それぞれのいいねにはIDが必要です-他にどのようにそれを削除しますか?

誰かがこれを以前にやったことがありますか?

4

5 に答える 5

5

IDを持つのは「like」ではなく、投稿です。これが、API呼び出しが「/ POST_ID /likes」をターゲットとして使用する理由です。「/POST_ID」を削除すると、投稿は削除されますが、 '/ POST_ID / likes'を削除すると、その投稿のユーザーの'like'が削除されます。

于 2011-02-18T23:22:20.507 に答える
5

はい、いいねはGraphAPIにIDがありません。{item_id}/likesにPOSTまたはDELETEすることで、アイテムが好きまたは違って、{item_id}好き/嫌いなオブジェクトのIDに置き換えられます。

現在のユーザーが好きなものを見つけるために(適切に削除できるように)、Userオブジェクトの「いいね」接続を使用できます(docs)。したがって、リクエストするhttp://graph.facebook.com/me/likesと、ページ/人/ユーザーが気に入ったもののリストが表示されます。(注:これには投稿や写真などは含まれません)

これにより、次のような項目でいっぱいのデータの配列が返されます。

{
     "name": "Very Hungry Caterpillar",
     "category": "Artist",
     "id": "29956247793",
     "created_time": "2009-03-27T15:48:29+0000"
}

そこにあるIDは同類のIDではありません。これはユーザーが気に入ったオブジェクトのIDであるため、嫌いにするためには、にDELETEを作成する必要がありますhttp://graph.facebook.com/29956247793/likes

于 2012-09-01T07:15:19.253 に答える
1

あなたはこれをのように作るために使用したものとは異なります。access_token

擬似コード:

好きになる:

FacebookGraphApi::getInstance()->setAccessToken('xxx')->post('xxxxxx/likes')

異なる:

FacebookGraphApi::getInstance()->setAccessToken('xxx')->delete('xxxxx/likes')
于 2011-02-11T15:56:02.730 に答える
1

LikesにはIDがあります。

https://graph.facebook.com/me/likesを見ると、結果のデータにそれぞれのID値が含まれていることがわかります。

{
   "data": [
      {
         "name": "Audi",
         "category": "Consumer_products",
         "id": "96585976469",
         "created_time": "2010-09-27T15:30:15+0000"
      }
    ]
}

そこにあるIDを試してみることをお勧めします。FBAPIドキュメントにエラーが発生することがあることに気づきました。

編集:これも用語の問題である可能性があると思います。ドキュメントにIDがないと書かれているのは、おそらくユーザーの投稿に似ているためです。これらはおそらく実際にはIDを持っておらず、削除を発行することで削除できます。 POST_ID/likes。次に、いいねボタンを使用してページや外部Webサイトを高く評価することによって生成されたいいねがあり、これらにはIDがあります。紛らわしいです。

于 2010-09-30T18:03:09.890 に答える
1

OpenGrpahでは、likesにはidがあります。これは、og.likesへのAPI呼び出しによって返されるオブジェクト内の単一のidフィールドです。

于 2013-03-15T09:57:51.697 に答える