我目前正在致力于创建一个添加到 Facebook 页面选项卡的应用程序。文档在这里:
http://developers.facebook.com/docs/appsonfacebook/pagetabs/
但是文档没有提及有关应用程序回调被删除的信息。当我的应用程序被删除可用于更新记录的选项卡时,是否有这样的回调会提醒我?
如果重要的话,我目前正在使用 PHP。
最佳答案
转到您的应用:管理页面 -> 编辑设置 -> 高级,然后取消授权回调 URL
这是一个关于如何在代码中取消用户授权的 PHP 示例:
require_once(dirname(dirname(dirname(__FILE__))).'/autoload.php');
App::init();
DBConn::init();
error_log("request");
$app_secret = 'yoursecretkey';
$request = parse_signed_request($_POST['signed_request'], $app_secret);
$fbid=$request["user_id"];
error_log($fbid);
if ($fbid) {
$rec = new ADOdb_Active_Record( "users" );
$found=$rec->load("id=?",array($fbid));
if ($found){
$rec->deauth= 1;
$rec->save();
}
}
echo "ok";
function parse_signed_request($signed_request, $secret) {
list($encoded_sig, $payload) = explode('.', $signed_request, 2);
// decode the data
$sig = base64_url_decode($encoded_sig);
$data = json_decode(base64_url_decode($payload), true);
if (strtoupper($data['algorithm']) !== 'HMAC-SHA256') {
error_log('Unknown algorithm. Expected HMAC-SHA256');
return null;
}
// check sig
$expected_sig = hash_hmac('sha256', $payload, $secret, $raw = true);
if ($sig !== $expected_sig) {
error_log('Bad Signed JSON signature!');
return null;
}
return $data;
}
function base64_url_decode($input) {
return base64_decode(strtr($input, '-_', '+/'));
}
关于php - 当应用程序从页面删除时 Facebook 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11711035/