2011-10-26 4 views
0

Web-APIから取得した情報を表示したいとします。 (instagramやlast.fmなど)javacriptまたはサーバー側のライブラリを使用した、より高速なAP​​Iアクセス

サーバサイド(Ruby)またはクライアントサイド(JS)APIライブラリの使用には、通常は大きな違いがありますか?

私はあなたがページがクライアントのブラウザにロードされた非同期に一度APIを連絡することができますので、Javascriptが速くなりますよね

APIライブラリは、一般的に両方のために存在するので、このための「ベストプラクティス」がある場合だけ不思議クライアント側とサーバー側。

答えて

1

それぞれの方法は長所と短所を持ちますが、一般的な場合はどちらかというとそれほど悪くないか悪いです。あなたの状況に合ったものを使用する必要があります。

データ/操作が少量であれば、JavaScriptまたはRubyの処理能力ではなく、Web要求自体によって抑制される可能性が高くなります。

私は完全なリストを作っていませんが、考慮すべきいくつかの一般的なもの:

クライアント側:

  • が処理能力は、あなたがより少ないリソースを使用し、クライアントにオーバープッシュが、パフォーマンスの意志されます変化する。
  • APIは、JSONpまたはアクセス制御許可ヘッダーのいずれかをサポートする必要があります。
  • 大規模なデータセットで大規模な操作を行うには非常に時間がかかります。
  • すべてのAPIキーは、お客様のウェブサイトのすべての訪問者が見ることができます。
  • サーバーからの初期応答時間は短くなりますが、API要求から大部分のコンテンツを読み込んだ場合でも、それを待つ必要があります。

サーバー側:

  • は、クライアントへのAPIキーを公開しません。
  • より多くのリソースを使用しますが、より多くのデータ/操作を処理できます
  • 最初のページを返すまでに時間がかかります。
  • 場合によっては、oAuthやその他のセキュリティ機能がサポートされているため、追加のユーザー機能や方法があります。
1

大きな違いの1つは、JS APIはサーバーに負荷を追加しないため、Webアプリケーションの拡張を容易にする点です。

また、一般的にJSを使用する方が、クライアントのブラウザがサーバー経由ではなくWeb-APIサーバーから直接データを取得するため、ユーザーがより高速になる可能性があります。