8

私は現在、Twitter で動作するアプリに取り組んでいますが、開発/テスト中 (特に、実際の Twitter データに大きく依存していない部分) は、常に API にアクセスしたり、ジャンク ツイートを公開したりすることを避けたいと考えています。

API を簡単に使用するために人々が使用する一般的な戦略はありますか (キャッシングは別として)? 私は、基本的に発信リクエストをインターセプトし、モック応答を返す独自のライブラリを展開することを考えていましたが、最初に明らかなものを見逃していないことを確認したかったのです。

4

4 に答える 4

11

私はおそらく、アプリケーションに必要なAPIの特定の部分をモックすることから始めます。実際、これにより、アプリのデザインをよりクリーンにする必要が生じる可能性があります。これは、アプリケーションを「どのように」行うかではなく、「何を」行うかという観点からアプリケーションを考える必要があるためです。

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

低レベルの実装の詳細ではなく機能の観点からAPIをモックすることで、実際にTwitterに接続する前に、アプリケーションが期待どおりに動作することを確認できます。その時点で、アプリが意図したとおりに機能することをすでに確認しているので、残っているのは、RESTリクエストを作成し、レスポンスを解析するコードを記述することだけです。これはかなり簡単なはずなので、おそらく最終的にはなりません。その時点で大量のジャンクデータでTwitterをヒットしました。

于 2009-05-03T03:21:46.617 に答える
2

キャッシングはおそらく最良の解決策です。それに加えて、APIは1時間あたり100リクエストに制限されていると思います。したがって、各リクエストをカウントし続ける関数を作成し、100に近づくと、10個のAPIリクエストごとにデータをプルします。それは難しいことではありません。おそらく、限界に近づいたときに抑制される勾配関数です。

于 2009-05-03T03:06:20.240 に答える
0

私はTweet#を使用しました。これはキャッシュされ、TwitterのAPIの100%がカバーされているため、必要なすべてのことを行う必要があります...

http://dimebrain.com/2009/01/introducing-tweet-the-complete-fluent-c-library-for-twitter.html

于 2009-05-03T04:50:03.660 に答える
0

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

また、アプリケーション アカウントをホワイトリストに登録することも検討してください。これにより、1 時間あたり 20,000 の API リクエスト制限を設定できるようになります (これは、アプリケーションではなくユーザー向けに作成されたものです)。

http://twitter.com/help/request_whitelisting

于 2009-05-08T19:36:48.750 に答える