codeigniter を使用してサイトを構築し、ユーザー向けに facebook ログインを実装しました。そこではすべてがうまく機能しています。アプリが接続されているユーザー トークンは、9 ヤード全体を節約できます。私が問題を抱えているのは、ログインしたユーザーではなく、ユーザーの投稿完了時に接続された会社のFacebookページにWebサイト自体を投稿することです。基本的に、ユーザーはリストを投稿します。ウェブサイトは、ログインしているユーザーのFacebookの壁ではなく、私のFacebookの会社のページにその投稿の投稿を送信します。(私はすでにそれを機能させています。ユーザーがログインしている間に、FacebookにログインしたWebサイトをそのままにして壁に投稿できますか?
質問する
2102 次
1 に答える
1
Appid、アプリ シークレット、およびアクセス トークンを取得する必要があります。有効期限が切れないように、アクセス トークンを延長できます。
$graphUrl = 'https://graph.facebook.com/oauth/access_token?client_id='.APPID .'&client_secret='.APPSECRET.'&grant_type=fb_exchange_token&fb_exchange_token='.ACCESS_TOKEN;
$accessToken = @file_get_contents($graphUrl);
parse_str($accessToken); //get the access_token param in the string and would be named $access_token
if(!$access_token) $access_token = $accessToken; //if cannot be extended then just return the access token with 2 hours expiry
会社のページとして投稿するには、ページ ID が必要です。
これは、これらすべてを機能させるために使用したスクリプトの一部です。これは codeigniter ではありませんが、それがどのように機能するかを見ることができます。
$config = array(
'appId' => APPID,
'secret' => APPSECRET,
);
$facebook = new Facebook($config);
$facebook->setAccessToken(ACCESS_TOKEN);
// Get User ID
$user = $facebook->getUser();
if ($user) {
try {
$page_id = '************'; //
$page_info = $facebook->api("/$page_id?fields=access_token");
if(!empty($page_info['access_token']) ) {
// do your code stuff
}
} catch etc etc
これがお役に立てば幸いです
于 2013-08-15T03:39:02.707 に答える