0

Facebookの壁にリンクを投稿しようとしています。しかし、これらのエラーが発生しました。このエラーを解決するために誰かを助けてください。

  $config = array(
   'appId' => 'xxxxxxxxxxxxx',
   'secret' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',

  );  


  $facebook = new Facebook($config);
  $user_id = $facebook->getUser();
   $facebook = new Facebook($config);
   $user_id = $facebook->getUser();
 if($user_id) {

  try {
   $facebook->api('/$user_id/feed','POST',
               array(  'access_token' => $facebook->getAccessToken(),
                 'message' => 'Hello World!',
                 'link' => 'www.example.com'
                    )
            );
} catch(FacebookApiException $e) {
$result = $e->getResult();
 error_log(json_encode($result));


    $login_url = $facebook->getLoginUrl( array(
                   'scope' => 'publish_stream'
                   )); 
    echo 'Please <a href="' . $login_url . '">login.</a>';
    error_log($e->getType());
    error_log($e->getMessage());
  }   

  echo '<br /><a href="' . $facebook->getLogoutUrl() . '">logout</a>';
} else {

  as the redirect_uri, so we don't
  // need to specify it here.
  $login_url = $facebook->getLoginUrl( array( 'scope' => 'publish_stream' ) );
  echo 'Please <a href="' . $login_url . '">login.</a>';

} 

{"error":{"message":"(#1) An error occured while creating the share","type":"OAuthException","code":1}}

OAuthException

(#1) An error occured while creating the share {"error":{"message":"(#1) An error occured while creating the share","type":"OAuthException","code":1}}

OAuthException (#1) 共有の作成中にエラーが発生しました

4

2 に答える 2

1

$user_id 変数が読み取られていないため、コードに小さな PHP の間違いがあります。解決策として、コード内の一重引用符を二重引用符に置き換え/$user_id/feedてください。これを試してみてください:

$facebook->api("/$user_id/feed",'POST',
               array(  'access_token' => $facebook->getAccessToken(),
                 'message' => 'Hello World!',
                 'link' => 'www.example.com'
                    )
            );
于 2012-10-25T07:12:39.643 に答える
1

追加'type' => 'link'してみて、動作するかどうかを確認していただけますか? Facebook フォーラムで読んだ限りでは、これは実際にはバグです。

于 2012-10-25T05:25:47.503 に答える