我目前正在使用 php sdk 和 js sdk 开发一个 facebook 应用程序。(我两个都需要)
当用户尚未授权应用程序并加载画布页面 (https://apps.facebook.com/app_name/) 时,什么也没有发生,他只是得到一个顶部有 facebook 栏的空白页面。但如果他加载应用程序的直接 url (https://my_app.mydomain.com),它工作正常,他被重定向到 OAuth 对话框。如果他授权该应用程序,则他会被重定向到https://apps.facebook.com/app_name/并且 iframe 会正确加载。
如果用户已经授权应用程序,则两个链接都可以正常工作(https://apps.facebook.com/app_name/ 和https://my_app.mydomain.com)。
这是我的验证码:
<?php
require 'php-sdk/facebook.php';
$facebook = new Facebook(array(
'appId' => '327991330620101',
'secret' => '79asecretcc4300',
'cookie' => true
));
$user = $facebook->getUser();
if ($user) {
try {
$user_profile = $facebook->api('/me');
} catch (FacebookApiException $e) {
$user = null;
}
}
if ($user) {
$logoutUrl = $facebook->getLogoutUrl();
} else {
$params = array(
'scope' => 'publish_stream',
'redirect_uri' => 'https://apps.facebook.com/quiet_quies/'
);
$loginUrl = $facebook->getLoginUrl($params);
header('Location: ' . $loginUrl);
}
有人对此有任何想法吗?这真的让我发疯......谢谢你的帮助。