OAuth を使用してユーザーを認証し、ユーザー データを取得しようとしています。ユーザーが Twitter にサインインしていない場合、認証が機能し、ユーザーの詳細を取得できます。しかし、ユーザーがすでに Twitter にサインインしている場合、「403 Forbidden: サーバーは要求を理解しましたが、処理を拒否しています」というエラー メッセージが表示されます。. 一部の投稿では、http ではなく https を介してすべてのリクエストを行うように述べています。私がしたこと。「http://net.tutsplus.com/tutorials/php/how-to-authenticate-users-with-twitter-oauth/」から認証用のコードをダウンロードしました。助けてください。
$twitterOauthObj = new TwitterOAuth($oauth_consumer_key, $oauth_consumer_secret);
if(!isset($_GET['oauth_token'])){
$requestTokenArray = $twitterOauthObj->getRequestToken($callback_url);
$requestToken = $requestTokenArray['oauth_token'];
$tokenSecret = $requestTokenArray['oauth_token_secret'];
$authorizeUrl = $twitterOauthObj->getAuthorizeURL($requestToken);
$response = $twitterOauthObj->oAuthRequest($authorizeUrl, 'GET', $requestTokenArray);
print_r($response);
} else{
$oauthToken = $_GET['oauth_token'];
$requestToken = $oauthToken;
$oauthVerifier = $_GET['oauth_verifier'];
$accessTokenArray = $twitterOauthObj->getAccessToken($oauthVerifier, $oauthToken);
$oauthToken = $accessTokenArray['oauth_token'];
$oauthTokenSecret = $accessTokenArray['oauth_token_secret'];
$userTwitterId = $accessTokenArray['user_id'];
$screenName = $accessTokenArray['screen_name'];
}