0

Codeigniter Web サイトを Facebook PHP SDK と統合しようとしています。私がやりたいことは、ユーザーが Facebook アカウントにログインしている場合、自分のサイトの記事を Facebook ウォールで共有できるようにすることです。私のライブラリは正しくロードされているように見えますが、何かをしようとするたびに、何らかのエラーが発生します...主に認証で発生します。getUser は正しい結果を返していないようです。Facebook アプリケーションをセットアップし、ライブラリの構成変数を設定しましたが、うまくいきません。Facebookにログインしていないと表示されます。「ログイン」アンカーをクリックすると、リンクから同じページに移動しますが、Facebook の URL が表示され、アプリでログインするように求められません。これが私のコードです:

function facebook($article_id){

$config = array(
    'appId' => '276870792431073',
    'secret' => '8d49eee575413fb9a8063d22f65dbf6a'
);

$this->load->library('facebook', $config);

$user = $this->facebook->getUser();

if($user){

    try {

        $user_profile = $this->facebook->api('/me');

    } catch (FacebookApiException $e){

        error_log($e);
        $user = null;

    }

}

if($user){

    $article = $this->article->fetch_article($article_id);
    $config = array(
        'message' => 'I just read an '.anchor('articles/'.url_title($article['title']).'/'.$article_id, 'article').' on '.anchor('', 'TrackTheOutbreak.com').'!',

    );

    $this->facebook->api('/me/feed', 'post', $config);

} else {

    $data['MESSAGE_TITLE'] = 'Authentication Error';
    $data['MESSAGE_TEXT'] = 'You must be logged into an existing Facebook account to use this feature.  Click '.anchor($this->facebook->getLoginUrl(), 'here').' to login.';
    $this->parser->parse('error_body.tpl', $data);

}

}

4

1 に答える 1

0

ユーザーの情報にアクセスしてウォールに何かを投稿するには、まずアクセス トークンを取得する必要があります。そのためには、Facebook の FB_login (そして Open Graph) を通じて許可を得ていることを確認する必要があります。このガイドを再確認し、タイムラインに投稿するためにすべてが適切に設定されていることを確認します.

https://developers.facebook.com/docs/reference/javascript/FB.login/

これが役立つことを願っています

于 2012-10-04T08:06:21.573 に答える