-1

ユーザーの「アクティビティ フィード」に投稿しようとしていますが、方法がわかりません。

ここに私のデモ アプリケーションがあります: http://bazaar-market.co.uk/facebook_test/car.html

すべてのコードが HTML であるため、ソースを表示してすべてのコードを確認できます。

<script type="text/javascript">
  function postView()
  {
      FB.api(
        '/me/fandango-auctions:view',
        'post',
        { item : 'http://bazaar-market.co.uk/facebook_test/car.html' },
        function(response) {
           if (!response || response.error) {
              alert("Error");
           } else {
              alert('View was successful! Action ID: ' + response.id);
           }
           console.log(response);
        });

  }
</script>

エラーが発生しています:

このメソッドは、アプリの access_token で呼び出す必要があります

アプリの設定で access_token を無効にすると、次のようになります。

ユーザー アカウントの詳細にアクセスするには、access_token を使用する必要があります

誰でも助けることができますか?

4

2 に答える 2

0

これを試して。

https://developers.facebook.com/docs/authentication/client-side/

<html> 
   <head> 
     <title>Client-side OAuth Example</title> 
   </head> 
   <body> 
   <script> 
     function displayUser(user) {
       var userName = document.getElementById('userName');
       var greetingText = document.createTextNode('Greetings, '
         + user.name + '.');
   userName.appendChild(greetingText);
     }

     var appID = YOUR_APP_ID;
     if (window.location.hash.length == 0) {
       var path = 'https://www.facebook.com/dialog/oauth?';
   var queryParams = ['client_id=' + appID,
     'redirect_uri=' + window.location,
     'response_type=token'];
   var query = queryParams.join('&');
   var url = path + query;
   window.open(url);
     } else {
       var accessToken = window.location.hash.substring(1);
       var path = "https://graph.facebook.com/me?";
   var queryParams = [accessToken, 'callback=displayUser'];
   var query = queryParams.join('&');
   var url = path + query;

   // use jsonp to call the graph
       var script = document.createElement('script');
       script.src = url;
       document.body.appendChild(script);        
     }
   </script> 
   <p id="userName"></p> 
   </body> 
  </html>
于 2012-08-14T13:40:07.750 に答える
0

関数内にエラーがあります: postView()。ログインすると、 access_token があります。 AAAFIDJXVUKcBABpW5pcU97CC7sTwdDmJykOKhZAykZC6D8gaTumTsDZBRzCfJ3eqc58R5whIFuGTBnPeeRGmn6N0ccBDLRGNKXJmy5ZCexTvjBqExTmI

しかし、すでに期限切れになっている別の access_token を使用する関数 postView() :

FB.api(
        '/me/fandango-auctions:view',
        'post',
        {
        access_token : 'AAAFIDJXVUKcBALARwKxJHdwwf7chdqleGsrQtYsIk3xiB4vR111s3Gc4cos3Dgd6CFynoUURci0i3t7lzh5mZA41UqSJzbccjy6JjWLSTk8UfgvEO',
        item : 'http://bazaar-market.co.uk/facebook_test/car.html' 
        },
        function(response) {
           if (!response || response.error) {
              alert("Error");
           } else {
              alert('View was successful! Action ID: ' + response.id);
           }
           console.log(response);
        });
于 2012-08-14T15:59:46.133 に答える