0

我正在尝试使用 OAuth-PHP 使用 PHP 发布推文,但我似乎无法弄清楚如何实现这一点。有没有人有关于如何做到这一点的任何提示,或者我应该去哪里看?

我已经看过 OAuth-PHP 库附带的示例,但我不确定如何调整它以发布推文。

到目前为止,我发现了一个类似的问题,但没有答案:Sending a tweet with oauth-php?

我正在使用的代码是这样的:

    define("TWITTER_CONSUMER_KEY", $this->config->Twitter->ConsumerKey);
    define("TWITTER_CONSUMER_SECRET", $this->config->Twitter->ConsumerSecret);

    define("TWITTER_OAUTH_HOST","https://api.twitter.com/");
    define("TWITTER_REQUEST_TOKEN_URL", TWITTER_OAUTH_HOST . "oauth/request_token");
    define("TWITTER_AUTHORIZE_URL", TWITTER_OAUTH_HOST . "oauth/authorize");
    define("TWITTER_ACCESS_TOKEN_URL", TWITTER_OAUTH_HOST . "oauth/access_token");
    define("TWITTER_PUBLIC_TIMELINE_API", TWITTER_OAUTH_HOST . "statuses/public_timeline.json");
    define("TWITTER_UPDATE_STATUS_API", TWITTER_OAUTH_HOST . "statuses/update.json");

    define('OAUTH_TMP_DIR', function_exists('sys_get_temp_dir') ? sys_get_temp_dir() : realpath($_ENV["TMP"]));

    // Twitter test
    $options = array('consumer_key' => TWITTER_CONSUMER_KEY, 'consumer_secret' => TWITTER_CONSUMER_SECRET);
    OAuthStore::instance("2Leg", $options);

    try {
        $request = new OAuthRequester(TWITTER_UPDATE_STATUS_API, "POST", array('status' => $msg));
        $result = $request->doRequest();
    }
    catch(OAuthException2 $e) {
        echo "Exception: " . $e->getMessage();
    }

这是我想要做的,但我得到一个异常:请求失败,代码为 401:{“request”:“/statuses/update.json”,“error”:“无效/过期令牌”}

由于我是 OAuth 的新手,我可能错过了一个重要的步骤并且不知道它......

有什么线索吗?

任何帮助将不胜感激。

4

1 回答 1

0

没关系,我只是使用了另一个 OAuth 实现,以及一个 twitter oauth 库。

发帖,这才是最重要的。

我只是想要一个可以用于多个社交网络的独立库,我将尝试使用这个库来实现与 facebook 相同的功能。

于 2013-01-03T15:51:54.173 回答