我有我的Facebook应用程序的授权问题。当我在我的本地Web服务器进程正常运行我的应用程序是这样的:与Facebook同步Facebook - 获取Facebook数据
**Get facebook user->If user is not logged on -> Redirect user on facebook login page**
**Get facebook user->If user is logged on -> Redirect user to authorize my facebook application->everything goes right without problems**
当我主持我使用iframe的Facebook应用程序,第二种方法不工作(用户从来没有得到证明的授权窗口),和我得到以下异常:
Error validating access token: User xxxxxxx has not authorized application xxxxxxx.
我用笨的PHP框架,这是我的PHP代码:
$this->load->library('facebook');
$user = null;
$user_profile = null;
$user = $this->facebook->getUser();
if ($user) {
try {
// Proceed knowing you have a logged in user who's authenticated.
$access_token = $this->facebook->getAccessToken();
$user_profile = $this->facebook->api($user);
}
catch (FacebookApiException $e) {
show_error(print_r($e, TRUE), 500);
}
}
else{
$data = array(
'redirect_uri' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx','scope'=>'email');
$access_token = $this->facebook->getAccessToken();
redirect($this->facebook->getLoginUrl($data));
}
$data['facebook']=$user_profile;
$this->load->view('templates/header');
$this->load->view('pages/prijavaKlasicnoFacebook', $data);
$this->load->view('templates/footer');
}
我不明白我需要做什么? – MrD
再次说明:__not__服务器端重定向,因为您留在iframe中 - 您需要“分离”它,并且只能通过JS完成客户端。因此,生成相应的JS代码,并将其交付给客户端。 – CBroe
好的,谢谢你的回答! – MrD