2011-12-03 23 views
0

以前はTwitter APIで作業していませんでした。Twitter gem、Heroku、内部サーバーエラー

私は、Twitterの宝石を利用するHerokuにプッシュされたSinatraアプリケーションを持っています。アプリケーションで(Twitterに関する限り)私が行う唯一のことは、最新の5つのつぶやきを引き出すことです。

@tweets = Twitter.user_timeline("username").first(5) 

しかし、最後の夜、私はそれが動作するのに問題があったが、Herokuのは、内部サーバーエラーを投げ、ログは私に言う:

2011-12-03T11:30:08+00:00 app[web.1]: Twitter::Error::BadRequest - : Rate limit exceeded. Clients may not make more than 150 requests per hour.: 

とスタックトレースを。アプリを再起動すると、再び機能しました。

今日は..目が覚めた私のHerokuのアプリをチェックして、私は再び内部サーバーエラーが発生しました

私はこの仕事をするために何ができますか? BadRequestエラーが発生した場合のためにつぶやきをキャッシュする方法はありますか、またはTwitterに無制限(または無制限)のリクエストを得る方法がありますか?

私は認証していません。混乱したビット。

答えて

2

あなたがUNAUTHユーザ/アカウントのTwitter's Rate limitに会ったようだ:

REST APIの説明責任およびIPベースのレート制限ありません。認証されていない通話には1時間に150回のリクエストが許可されます。認証されていないコールは、要求を行ったサーバまたはデバイスのパブリックIPに照らして測定されます。

OAuth認証を使用するようにしてください:

のOAuthコールは時速350個の要求を許可され、要求に使用oauth_tokenに対して測定されています。

+0

クールです。ありがとう、私はそれを試みます。奇妙なことに、私は目を覚ましただけで、私が眠っている間誰も私のサイトを訪れていないと思うが、私はエラーが出る。 – cabaret

+0

あなたのネットワーク内の誰かが、その時間にフィードにアクセスしていた可能性はありますか?知るか? ) – WarHog

+0

確かに、可能かもしれません。 OAuth認証を追加して、もう一度試してみましょう:)クイック返信のおかげでありがとう! – cabaret

関連する問題