2

ユーザーの Twitter フィードを取得して、5 分間キャッシュします。つまり、実際には 1 時間に 12 回しか Twitter に接続していません。

しかし、私はまだメッセージを受け取ります

レート制限を超えました。クライアントは、1 時間あたり 150 を超えるリクエストを行うことはできません。

フィードに戻ってきました。これは、私が共有サーバー上にいて、そのサーバー IP が制限の基になっているためだと思います。

以前は、curl オプションでユーザー/パスを設定するだけでした

curl_setopt($ch,CURLOPT_USERPWD,$username.':'.$password);

これにより、共有サーバー IP の代わりにそのユーザーに 150 の制限が課されますが、Twitter は oAuth を支持して基本認証をサポートしなくなりました..

キー/シークレット/トークンなどを使用して「アプリ」全体をセットアップする必要はありません.ユーザーフィードを単に後退させるにはやり過ぎのように思えます..他のオプションはありますか?

4

1 に答える 1

1

簡単な方法はTwitterOAuthを使用することです。アプリケーションを Twitter に登録する必要がありますが、それには 1 分しかかかりません。

twitteroauth.php と OAuth.php をダウンロードし、アプリケーションのコンシューマー キー/シークレットを取得したら、アプリケーションの詳細ページを表示するときに [マイ アクセス トークン] をクリックして、アカウントのアクセス トークンを取得できます。

<?php
// Require the TwitterOAuth library. http://github.com/abraham/twitteroauth
require_once('twitteroauth/twitteroauth.php');
$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_SECRET);
$tweets = $connection->get('statuses/user_timeline', array('screen_name' => 'twitter'));
于 2010-12-04T19:21:36.933 に答える