2

記事を読むためのシンプルなアプリを作成しました。このアプリは、次のコードで投稿を作成します。

  FB.api('/me/[NAMESPACE]:read&article=http://example.com/article.html','post', function(response) {

                 if (!response) { 
                      alert('Error Occurred I got no response with ' + $pageURL);
                 }
                 else if (response.error) {
                      alert('Error Occurred' + response.responseText + " " + response.error.responseText);
                 } else {
                     alert('Post was successful! Action ID: ' + response.id);
                     var idToDeleteLater = response.id;
                 }
         });

また、以前にそのページにアクセスしたことがあるかどうかを確認できるようにしたいので、同じ記事の投稿をこれ以上作成することを禁止できます。

ただし、そのためには記事IDを取得する必要があり、response.idコマンドでは個々の投稿のIDしか取得できないため、記事IDを取得できませんでした。

与えられた方法を使いたくない:

  function postUnreadSpecific()
  {
  var postId = idToDeleteLater;

  FB.api(postId, 'delete', function(response) {
  if (!response || response.error) {
    alert('Error occured');
  } else {
    alert('Post was deleted');
  }
});

読み取りはボタンを介して行われるため(料理のチュートリアルと同じ)、ボタンを押すたびに、異なるIDで新しい投稿が作成され、手動で入力したくないことは明らかです。

つまり、最終的には、ページID(response.idの投稿IDではない)を取得し、ページに以前にアクセスしたことがあるかどうかを確認して、新しい投稿の作成を無効にする方法を説明します...

4

1 に答える 1

1

Facebook Open Graphアクションには、一意にするオプションがあります。この設定は、[詳細設定]リンクの下にある[ストーリー添付ファイルの構成]の下のアクション作成ページにあります。そこには、「1回だけ許可する」に設定できる「一意のアクション」と呼ばれるトグルがあります。これにより、ユーザーごとに1つの「アクションオブジェクト」ペアのみが存在するようになります。

アクションは承認された後は編集できないため、アクションを設定するときにこれを行う必要があることに注意してください。

アクションの例

于 2012-04-29T22:13:23.067 に答える