@kiberchainik
начинающий найкрутейшЫй програмЁр

Как исправить ошибку 401 при авторизации через твиттер?

$CONSUMER_KEY = '123';
            $CONSUMER_SECRET = '123';
            $Bearer_Token = '123';
            $Access_Token = '123';
            
            $REQUEST_TOKEN_URL = 'https://api.twitter.com/oauth/request_token';
            $AUTHORIZE_URL = 'https://api.twitter.com/oauth/authorize';
            $ACCESS_TOKEN_URL = 'https://api.twitter.com/oauth/access_token';
            $ACCOUNT_DATA_URL = 'https://api.twitter.com/1.1/users/show.json';
            
            $CALLBACK_URL = 'https://findsol.it/login/twitter_auth';
            
            // рандомная строка (для безопасности)
            $oauth_nonce = md5(uniqid(rand(), true)); 
            
            // время когда будет выполняться запрос (в секундых)
            $oauth_timestamp = time(); 
            
            $oauth_base_text = "GET&";
            $oauth_base_text .= urlencode($REQUEST_TOKEN_URL)."&";
            $oauth_base_text .= urlencode("oauth_callback=".urlencode($CALLBACK_URL)."&");
            $oauth_base_text .= urlencode("oauth_consumer_key=".$CONSUMER_KEY."&");
            $oauth_base_text .= urlencode("oauth_nonce=".$oauth_nonce."&");
            $oauth_base_text .= urlencode("oauth_signature_method=HMAC-SHA1&");
            $oauth_base_text .= urlencode("oauth_timestamp=".$oauth_timestamp."&");
            $oauth_base_text .= urlencode("oauth_version=1.0");
            
            $oauth_signature = base64_encode(hash_hmac("sha1", $oauth_base_text, $CONSUMER_SECRET."&", true));
            $url = $REQUEST_TOKEN_URL;
            $url .= '?oauth_callback='.urlencode($CALLBACK_URL);
            $url .= '&oauth_consumer_key='.$CONSUMER_KEY;
            $url .= '&oauth_nonce='.$oauth_nonce;
            $url .= '&oauth_signature='.urlencode($oauth_signature);
            $url .= '&oauth_signature_method=HMAC-SHA1';
            $url .= '&oauth_timestamp='.$oauth_timestamp;
            $url .= '&oauth_version=1.0';
            $response = file_get_contents($url);
            parse_str($response, $result);
            print_r($result);

постоянно выдается ошибка Failed to open stream: HTTP request failed! HTTP/1.1 401 Unauthorized
  • Вопрос задан
  • 127 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы