Невозможно аннулировать токен на предъявителя с помощью Twitter API - PullRequest
1 голос
/ 23 октября 2019

Я работаю над новым приложением Twitter. Это плагин WordPress, который я создаю. Работа с токенами на предъявителя Oauth2. Я мог бы сгенерировать это хорошо. И он загружает твиты, как и ожидалось.

Однако я также хочу встроить функцию «аннулирования токенов на предъявителя» в мой плагин.

Владелец плагина будет использовать свои собственные учетные данные (ключ и секретный ключ Twitter), которые они получат напрямую из Twitter.

Когда я пытаюсь «аннулировать токен носителя», я получаю этот ответиз Twitter:

"{" errors ": [{" code ": 348," message ":" Клиентскому приложению не разрешено аннулировать этот токен. "}]}"

ответ: {код: "401", сообщение: "Несанкционировано"},

$url_encoded_consumer_key = urlencode( $consumer_key );
$url_encoded_consumer_secret = urlencode( $consumer_secret );
$basic_auth_string = $url_encoded_consumer_key . ':' . $url_encoded_consumer_secret;
$base64_encoded_basic_auth_string = base64_encode( $basic_auth_string );

        $args = array(
                'method' => 'POST',
                'httpversion' => '1.1',
                'headers' => array(
                    'authorization' => 'Basic ' . $base64_encoded_basic_auth_string,
                    'Content-Type' => 'application/x-www-form-urlencoded;charset=UTF-8'
                ),
                'body' => array(
                    'access_token' => $bearer_token
                )
            );
        /* Sending the values & retrieving the response object from Twitter */
        $response = wp_remote_post( 'https://api.twitter.com/oauth2/invalidate_token', $args );
$body = json_decode( $response['body'] );

Вместо аннулирования токена на предъявителя. Это показывает мне «401 Несанкционированный» ошибка.

Может кто-нибудь, пожалуйста, скажите мне, что я делаю неправильно?

...