Почему мой подход к использованию нового Twitter API плох?

Я хотел бы иметь возможность публиковать твиты в твиттере от имени моих пользователей, которые тоже хотят делиться своими постами на моем веб-сайте в виде твитов. Я использую замечательный класс TwitterAPIExchange Джеймса Маллисона и пытаюсь публиковать сообщения в твиттере с помощью PHP. Этот класс находится здесь.

Я пытаюсь использовать его следующим образом:

        /** Set access tokens here - see: https://dev.twitter.com/apps/ **/
        $settings = array(
            'oauth_access_token' => $core->getOauthAccessToken(),
            'oauth_access_token_secret' => $core->getOauthAccessTokenSecret(),
            'consumer_key' => $core->getTwitterConsumerKey(),
            'consumer_secret' => $core->getTwitterConsumerSecret()
        );            
        $url = 'https://api.twitter.com/1.1/statuses/update.json';
        $requestMethod = 'POST';            
        $stripped_question = "See my reply to \"$stripped_question\"";
        $stripped_response = $stripped_response;
        $message = $stripped_question.$stripped_response;
        /*$postfields = array(
            'status' => rawurlencode(rawurlencode($message))
        );*/            
        $postfields = array(
        CURLOPT_HTTPHEADER => array("https://api.twitter.com/oauth/authorize"),
        CURLOPT_HEADER => false,
        CURLOPT_URL => $core->getHomeUrl(),
        CURLOPT_POST => true,
        CURLOPT_POSTFIELDS => 'status=' . rawurlencode(rawurlencode($status)),
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_VERBOSE => true,
        CURLOPT_SSL_VERIFYPEER => false
        );
        /** Perform the request and echo the response **/
        $twitter = new TwitterAPIExchange($settings);
        echo "<!--".var_dump($twitter->buildOauth($url, $requestMethod)
            ->setPostfields($postfields)
            ->performRequest())."-->";            

Однако что-то не так, я получаю следующую ошибку:

string(63) "{"errors":[{"message":"Could not authenticate you","code":32}]}"

Итак, мой вопрос: как я могу опубликовать твит в твиттере от имени пользователя моего сайта? Почему твиттер не может аутентифицировать пользователя? Я проверил данные, и все кажется правильным, поэтому я считаю, что проблема заключается во втором коде в моем сообщении. Большое спасибо за любой ответ.


person Lajos Arpad    schedule 23.06.2013    source источник
comment
Эй, Лайос, у тебя получилось?   -  person Jimbo    schedule 09.08.2013


Ответы (1)


Некоторые небольшие проверки

  1. Вы перегенерировали токен доступа?
  2. У вас есть права на запись в приложении?

Первый работал для меня.

person DownDown    schedule 23.06.2013
comment
Уровень доступа Чтение, запись и прямые сообщения. Я заново создал токен доступа. Итак, ваш ответ содержит несколько хороших предложений, но, к сожалению, не решает проблему в моем случае. - person Lajos Arpad; 23.06.2013