新しいPHP SDKを使用して権限を求める方法を教えてください。私はグラフのAPIを使用して、URLを常に解析したくありません。アプリケーションが開かれると、ユーザーが既に許可していない場合に自動的に許可が求められます。ここで新しいPHP SDK(3.X.X)を使用して権限を求める
12
A
答えて
20
は、私は、最新のPHP SDK(3.0.1)
// init new facebook class instance with app info (taken from the DB)
$facebook = new Facebook(array(
'appId' => 'YOUR APP ID',
'secret' => 'YOUR APP SECRET'
));
// get user UID
$fb_user_id = $facebook->getUser();
// get the url where to redirect the user
$location = "". $facebook->getLoginUrl(array('scope' => 'publish_stream, email'));
// check if we have valid user
if ($fb_user_id) {
try {
// Proceed knowing you have a logged in user who's authenticated.
$fb_user_profile = $facebook->api('/me');
} catch (FacebookApiException $e) {
$fb_user_id = NULL;
// seems we don't have enough permissions
// we use javascript to redirect user instead of header() due to Facebook bug
print '<script language="javascript" type="text/javascript"> top.location.href="'. $location .'"; </script>';
// kill the code so nothing else will happen before user gives us permissions
die();
}
} else {
// seems our user hasn't logged in, redirect him to a FB login page
print '<script language="javascript" type="text/javascript"> top.location.href="'. $location .'"; </script>';
// kill the code so nothing else will happen before user gives us permissions
die();
}
// at this point we have an logged in user who has given permissions to our APP
// basic user info can be fetched easily
print "Welcome to my app". $fb_user_profile['name'];
+0
'cookie'パラメータは、最新のPHP SDKでは使用されていません。それを削除することができます。 – Phillip
+1
ありがとう、私はそれが古いバージョンのPHP SDKから残っていたと思います –
2
PHP-SDK 3.2.0ためaccess_tokenはとスコープとログアウトと
セッション・ベースのログインでそれをやっている方法です。
<?php
require './src/facebook.php';
$facebook = new Facebook(array(
'appId' => '135669679827333',
'secret' => 'xxxxxxxxxxxxxxxxxxxxxx',
));
$user = $facebook->getUser();
if ($user) {
try {
// Proceed knowing you have a logged in user who's authenticated.
$user_profile = $facebook->api('/me');
} catch (FacebookApiException $e) {
$user = null;
}
}
if ($user) {
$params = array(access_token => ''.$access_token.'');
$logoutUrl = $facebook->getLogoutUrl($params);
} else {
$params = array(
scope => 'read_stream,publish_stream,publish_actions,read_friendlists',
//redirect_uri => $url
);
$loginUrl = $facebook->getLoginUrl($params);
};
$access_token = $_SESSION['fb_135669679827333_access_token'];
?>
。
<?php if($_SESSION['fb_135669679827333_access_token']): ?>
<a href="<?php echo $logoutUrl; ?>&access_token=<?php echo $access_token; ?>" target="_parent">Login & Connect</a>
<?php else: ?>
<a href="<?php echo $loginUrl; ?>" target="_parent">Login & Connect</a>
<?php endif ?>
関連する問題
- 1. クロムエクステンション - 新しい権限を求める
- 2. 更新アンドロイドSDK権限エラー
- 3. Oracle 11gステートメントを使用して新しいユーザー権限と付与権限を作成しますか?
- 4. 新しいマルチテナントアプリを作成する権限と権限システム
- 5. スケジュール権限の作成VBScriptを使用して管理者権限を求めずに管理者として実行するタスクを作成しますか?
- 6. FacebookのAndroid SDKを使用して公開権限をリクエストする方法は?
- 7. Linuxでpolkitを使用してシリアルポート権限を要求する方法は?
- 8. JWTを使用して権限/ロールを使用して権限を処理する方法
- 9. UIWebViewがロケーション権限を要求しています
- 10. 外部アプリケーションでwordpress 3.x.x関数を使用してください
- 11. オプションのFacebook権限を求める方法
- 12. 実行時に権限を正しく要求する方法は?アンドロイド・スタジオを使用してアプリケーションを作る
- 13. FacebookのPHP-SDKが解除SESSIONないユーザーがアプリケーションの権限
- 14. オプションとして「電子メール」権限を要求していますか?
- 15. facebook php sdkを使用してログアウト
- 16. Chromeでpublish_stream権限を求める方法
- 17. SDKアプリケーションの重複権限
- 18. Android Marshmallow新しい権限のサポート
- 19. 新しいホスティング - 権限の問題?
- 20. publish_stream権限を使用できません - Android SDK 3.0のFacebook SDK
- 21. Androidの権限:誰が何を使用していますか?
- 22. JS SDKを使用してFacebookのiFrameアプリケーションで権限を要求する正しい方法は何ですか?
- 23. NSFileManagerを使用して新しいフォルダを作成する権限を取得する
- 24. Ansibleを使用してGCEインスタンスを作成し、権限が
- 25. Rails 3の権限?
- 26. "Permissions Dispatcher"を使用してMarshmallow権限を追加する
- 27. Firestoreの限定された権限を持つAdmin SDKの使用方法は?
- 28. ユーザー権限を要求しないIdentity Serverの認証
- 29. 管理権限を求めずにPowerShellでバッチを開始
- 30. Docker PHP権限
これはどういう意味ですか?あなたはいつも '$ facebook-> getLoginUrl()'を使いたくないのですか? – ifaour