web-dev-qa-db-ja.com

クライアント側V.S.サーバー側検索?

現在、HTMLでのWebサイトおよびアプリケーションの設計を支援しています。ユーザーがサイト/アプリで検索バーを使用して目的のコンテンツを検索できるようにしたいと考えています。また、さまざまな検索オプションとより集中した検索を可能にする高度な検索機能を含めたいと考えています。

クライアント側(JavaScriptを使用)またはサーバー側(PHPを使用)のどちらで検索機能をプログラムするかを決定するのに問題があります。両方の長所と短所は何ですか?また、何をお勧めしますか?

6
user70278

他の人があなたの質問にコメントしたように、あなたはウェブサイトで効果的かつ効率的な検索を提供するためのサーバーサイド機能needが必要です。それ以外の場合は、すべての検索可能なコンテンツをクライアント側の検索エンジンで利用できるようにする必要があります。検索可能なコンテンツの量がveryでない限り、これは面倒です。

サーバー側の機能を取得したら、はい、AJAXを追加して、検索の自動化、特にオートコンプリート機能、クイックフィルタリングなどを行うことができます。ただし、サーバーにも依存します。サイド機能。

私の個人的な見解。時間がある場合AJAXそしてそれadds速度、そうします。しかし、それは時間がかかり、おそらくあなたの時間は他の場所で費やすほうが良いでしょう。

3
alex

これはユーザーエクスペリエンスの種類の質問に傾いていると思いますが、それに入る前に1つだけ述べておきたいと思います。既にページに読み込まれているものを検索する場合は、サーバー側が既にフェッチしてページに与えているレコードを検索するため、JSを使用するのがおそらく最善の方法です。そうでない場合は、あなたの問題はもっとUXだと思います。

検索するコンテンツがまだページ上にない場合は、クライアント側で検索を呼び出すことができますが、クライアントがレンダリングするレコードをフェッチするには、サーバー側のロジックが必要です。大きな問題は、ユーザーにページの読み込みを続けてもらいたいですか、それとも同じページに結果をレンダリングしたいですか?

職場では、両方のタイプの検索が使用されています。ユーザーを検索するための検索ボックスがあり、ユーザーに関する最小限の情報を取得し、入力のテキストに基づいてドロップダウンを作成します。ただし、その検索を送信することもでき、検索結果に関する詳細を表示するページが表示されます。

これは実際にはaが少なく、パフォーマンス/開発/その他に適しています。ユーザーが検索をどのように操作するかについての詳細。どちらの方法でも、サーバー側のコードが必要になると思いますが、どのように表示するかは完全にあなたとUXの目標次第です。

2
David Peterman