【发布时间】:2012-11-16 04:02:44
【问题描述】:
我正在尝试通过我的网站同时登录 Facebook 和 Twitter。计划是发布到我的网站并让网站同时发布到两者。该代码适用于登录一个或另一个,但在登录一个然后另一个时不起作用。我在 Facebook 使用 Facebook PHP SDK,在 Twitter 使用 tmhOAuth。
$userId = $this->facebook->getUser();
if($userId == 0){
$this->data['fbloginurl'] = $this->facebook->getLoginUrl(array('scope'=>'manage_pages,publish_stream,read_stream,offline_access'));
} else {
if($this->session->userdata('userInfo')->userType == 1 || $this->session->userdata('userInfo')->userType == 2){
$this->facebook->setExtendedAccessToken();
$newdata = array('fbInfo' => $this->facebook->api('/me/accounts')['data']);
$this->session->set_userdata($newdata);
foreach($this->session->userdata('fbInfo') as $page){
if($page['category'] != 'Application'){
$this->status_model->updateToken($page['name'],$page['access_token']);
}
}
}
}
$tmhOAuth = new tmhOAuth($this->config->item('tmhOAuth'));
if(isset($_REQUEST['oauth_verifier']) && $this->session->userdata('oauth') && !$this->session->userdata('access_token')){
access_token($tmhOAuth);
} else if(!$this->session->userdata('access_token')){
$this->data['twloginurl'] = request_token($tmhOAuth);
} else {
$tmhOAuth->config['user_token'] = $this->session->userdata('access_token')['oauth_token'];
$tmhOAuth->config['user_secret'] = $this->session->userdata('access_token')['oauth_token_secret'];
$newdata = array('twitInfo' => getTwitInfo($tmhOAuth));
$this->session->set_userdata($newdata);
}
我可以登录 Facebook 或 Twitter,并且效果很好,但同时进行这两种操作似乎根本不起作用。
有什么想法吗?
【问题讨论】:
标签: php facebook twitter oauth