2009-05-03 2 views
7

私は現在、Twitterで動作するアプリケーションで作業していますが、開発中/テスト中(特に実際のTwitterデータに頼らない部分)常にAPIにぶつかったり、迷惑なつぶやきを公開したりしないようにします。APIをスラミングせずにTwitterアプリケーションを開発/テストする

API(キャッシング)を簡単に利用するための一般的な戦略はありますか?基本的に発信要求を傍受して偽の応答を返す自分の図書館を転がすことを考えていましたが、最初に何かを見逃していないことを確認したかったのです。

答えて

11

私はおそらく、アプリケーションに必要なAPIの特定の部分を嘲笑することから始めます。実際には、実際にアプリケーションのクリーンなデザインが必要になることがあります。なぜなら、アプリケーションを「どのように」行うべきかではなく、何をすべきかという点でアプリケーションを考える必要があるからです。

たとえば、Twitter Search APIを使用している場合、アプリケーションはJSONまたはAtom形式オプションを使用しているかどうかを気にする必要はありません。特定のクエリを使用してTwitterを検索し、結果を取得する機能は、必要な機能を表しているため、その抽象化レベルでAPIをモックする必要があります。出力形式は単なる実装の詳細です。

実際のところTwitterに実際に接続する前に、低レベルの実装の詳細ではなく機能面でAPIを嘲笑することで、アプリケーションが期待することを確実に行うことができます。その時点で、アプリは意図したとおりに動作することを既に確認しているので、残りの唯一のことは、RESTリクエストを作成してレスポンスを解析するコードを書くことです。これはかなり簡単なので、その時点でたくさんの迷惑データでTwitterにぶつかる。私はさえずる#を使用しました

2

キャッシュが最適なソリューションです。それに加えて、APIは1時間あたり100リクエストに制限されていると私は考えています。だから、各リクエストを数え続けて100に近づく関数を作って、10個のAPIリクエストごとにデータを取得します。それは難しい設定ではないでしょう。おそらく、あなたが限界に近づいているときにぼかしをかける勾配関数です。

0

キャッシュのもの必要があります。..キャッシュが古すぎる場合は、APIを介して最新のデータを要求します。

また、あなたのアプリケーションアカウントをホワイトリストに載せることについて考えてみてください.1時間あたり20,000のapiリクエスト制限を持つことができます(アプリケーションではなくユーザーのために作られています)。

http://twitter.com/help/request_whitelisting

関連する問題