为什么我使用新Twitter API的方法不好?

时间:2013-06-23 11:08:36

标签: php twitter twitter-oauth

我希望能够以我的用户名发布Twitter推文,他们希望在我的网站上以推文形式分享他们的帖子。我正在使用James Mallison的精彩TwitterAPIExchange类,并尝试使用PHP在Twitter上发布。找到该课程here

我试图以下列方式使用它:

        /** 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}]}"

所以,我的问题是:如何以我网站用户的名义向Twitter发布推文?为什么twitter无法对用户进行身份验证?我检查了数据,一切似乎都是正确的,所以我认为问题在于我的帖子中的第二个代码。非常感谢你的回答。

1 个答案:

答案 0 :(得分:0)

一些小支票

  1. 您是否重新生成了访问令牌?
  2. 您在应用中获得了写入权限吗?
  3. 第一个为我工作。