シナリオの例を見てみましょう:
クライアントは Web サイトを開き、テキストボックスから入力した 2 つの数値の合計を見つけます。次に、[追加] ボタンをクリックします。2 つのパラメーターがサーバーに HTTP GET されます。サーバーでは、数値を追加するために PHP コードが書き込まれ、結果がエコーされます。 .
このシナリオに基づいて、Web サービスとアプリケーションの違いを説明できる人はいますか?
シナリオの例を見てみましょう:
クライアントは Web サイトを開き、テキストボックスから入力した 2 つの数値の合計を見つけます。次に、[追加] ボタンをクリックします。2 つのパラメーターがサーバーに HTTP GET されます。サーバーでは、数値を追加するために PHP コードが書き込まれ、結果がエコーされます。 .
このシナリオに基づいて、Web サービスとアプリケーションの違いを説明できる人はいますか?
あなたの場合、2 つの数値を提供して結果を取得するためのユーザー インターフェイスがある場合、それは Web アプリケーションと呼ばれる必要があります。しかし、2 つの数値を受け取って http 経由で結果を返す API を公開している場合は、Web サービスと呼ぶ必要があります。
低レベルでは、Web アプリケーションと Web サービスはどちらも同じものです。しかし要点は、Web サービスはマシン/プログラムからマシン/プログラムへの通信用であるのに対し、Web アプリケーションはユーザー用であるということです。
Web アプリケーションはユーザーを対象としており、Web サービスは他のアプリケーションを対象としていると言えます。それが最も重要な違いです。Web アプリケーションは通常、ユーザーに見栄えのする HTML でデータを表示し、Web サービスは通常、他のアプリケーションで簡単に解析できる XML でデータを表示します。
人が車を運転します。その車は、内燃機関、電気モーター、または原子炉によって駆動される可能性があります。ただし、ドライバーが見る必要があるのはコントロールと前方の道路だけなので、動力源はドライバーにとって重要ではありません。
用途は車です。Web サービスは原子炉です。
2 つの数を足すには Web サービスを作成し、減算するには別の Web サービスを作成しますが、電卓は、足し算、引き算、および他の多くの Web サービスを組み合わせて使用する Web アプリケーションです。
Google 検索の例を見てみましょう。Google 検索は 2 つの方法で使用できます。まず、http://www.google.comにアクセスして、検索クエリを発行します。Google は結果を返します。次に、カスタム検索 API を使用して Google 検索をウェブサイトに統合できます。
最初のケースでは Google 検索が Web アプリケーションとして機能し、2 番目の例では Web サービスとして機能しています。
ここで、いくつかの違いを指摘できます。
Web サービスは、その周りに Web ラッパーを持つ Java のメソッドと同等です。サーバー上に存在し、データを送信したり、クエリを実行したりでき、結果を返す場合と返さない場合があります。フロントエンドはなく、http get、put、delete などを介してのみアクセスできます。
Web アプリケーションは、ユーザーがタスクを達成するのを支援するように設計されたサーバー上に存在する、完全に機能するソフトウェアです。これには、ユーザーがそれとやり取りしたり、データを入力したりできるフロントエンドがあります。
Web アプリケーションは、複数の Web サービスを使用してその目標/最終結果を達成できます
Web サービスは、アプリケーションを使用するためのものであり、Web アプリケーションを介して呼び出されます。Web サービスと通信するには、データを SOAP メッセージまたは REST、つまり XML over HTTP として送信する必要があります。
ほとんどの場合、Web サービスはアプリケーションの一部ではありません。これは、他の Web アプリケーションによる使用を容易にするためであり、エンド ユーザーが直接使用するためのものではないためです。
Web アプリケーションは、応答を提供するために Web サービスを使用する場合と使用しない場合がある GUI によって直接呼び出される人間が消費するためのものです。