29

Webサービスを始めたばかりなので、私の質問がばかげていると思われる場合はご容赦ください。

なぜWebサービスが必要なのですか?それらは通常のWebアプリケーションとどのように異なりますか?

多くのチュートリアルで2つの使用法が言及されています。1つは、異なるマシン/アプリケーション間の通信です。これは問題ないように聞こえます。しかし、次は再利用可能なアプリケーションコンポーネントを開発することです。私の質問は、その目的のためにWebサービスが必要ですか?

例:通貨コンバーターはWebサービスとして実装でき、URLで公開できます。しかし、その後、同じものをWebアプリケーションとして作成できます。Webサービスを使用する実際の利点はどこにありますか?

また、SOの一部の投稿によると、UIが関与していない場合はWebサービスを使用し、GUIが必要な場合はWebアプリケーションを使用する必要があります。選択はとても簡単ですか?

注:ここでは、SOAPベースのWebサービスについて言及しています。RESTfulなものは異なる場合があります。

4

4 に答える 4

9

を使用することには多くの利点がありますweb serviceshttp通常のアプリケーションに対する主な利点SOAPは、はるかに効率的で帯域幅のコストが低いメッセージングを使用することです。

もう1つの利点は、Service Transport、XMLMessaging、Service Description、およびService Discoveryの各レイヤーが標準プロトコルを使用するため、開発者がプロ​​グラミング言語に関係なく機能を簡単に開発できることです。

あなたが天気予報などのサービスのプロバイダーであるとします。websiteなぜ開発者を作り、あなたのページに行きscrap、彼らが必要とするデータを抽出するのですか?開発者が日付を渡して、必要なすべての情報を含むweb service明確に定義されたドキュメントを取り戻すことができるので、これを開発するのは簡単ではないでしょうか?xmlすべてのタイプのケースで同じことが起こります...

于 2012-09-04T20:38:43.333 に答える
9

Webサービス(特にSOAP)は、他のプログラムによって消費/読み取り/使用されるように設計されています。「スクリーンスクレイピング」プログラムを作成する必要があった場合(つまり、Webアプリケーションを操作し、ページをユーザーにとって美しく親しみやすいものにするすべてのgooから必要なデータを選択する)、その構造に感謝します。

また、SOの一部の投稿によると、UIが関与していない場合はWebサービスを使用し、GUIが必要な場合はWebアプリケーションを使用する必要があります。選択はそれだけ簡単ですか?

一言で言えば、「はい」。

于 2012-09-04T20:37:42.023 に答える
7

出典:なぜWebサービスなのか?

  • 既存の機能をネットワークに公開する:

Webサービスは、HTTPを使用してリモートで呼び出すことができるマネージコードの単位です。つまり、HTTP要求を使用してアクティブ化できます。したがって、Webサービスを使用すると、既存のコードの機能をネットワーク経由で公開できます。ネットワーク上に公開されると、他のアプリケーションがプログラムの機能を使用できるようになります。

  • さまざまなアプリケーションの接続、つまり相互運用性:

Webサービスを使用すると、さまざまなアプリケーションが相互に通信し、データやサービスを相互に共有できます。他のアプリケーションもWebサービスのサービスを使用できます。たとえば、VBまたは.NETアプリケーションはJava Webサービスと通信でき、その逆も可能です。そのため、Webサービスは、アプリケーションプラットフォームとテクノロジを独立させるために使用されます。

  • 標準化されたプロトコル:

Webサービスは、通信に標準化された業界標準プロトコルを使用します。4つのレイヤー(サービストランスポート、XMLメッセージング、サービス記述、およびサービス検出レイヤー)はすべて、Webサービスプロトコルスタックで明確に定義されたプロトコルを使用します。このプロトコルスタックの標準化により、幅広い選択肢、競争によるコストの削減、品質の向上など、多くの利点がビジネスにもたらされます。

  • 低コストのコミュニケーション:

Webサービスは通信にSOAPoverHTTPプロトコルを使用するため、既存の低コストのインターネットを使用してWebサービスを実装できます。このソリューションは、EDI/B2Bのような独自のソリューションと比較してはるかに低コストです。SOAP over HTTPに加えて、WebサービスはFTPなどの他の信頼できるトランスポートメカニズムに実装することもできます。

于 2014-10-14T05:42:58.730 に答える
0
  1. バックエンドとUIコードの依存関係(JSPやJSFなど)を削除することにより、UIとバックエンドコード間のモジュール性を提供します。

  2. 通信はより効率的で、帯域幅のコストが低くなります。xmlとjson形式を使用して必要なデータのみを共有します。

  3. 現在、1日のアプリケーションは、モバイルPDAなどの他のさまざまなデバイスから使用されています。また、ほとんどのアプリケーションにモバイルアプリがあります。したがって、この場合、Webサービスを使用する場合は、アプリケーションを別の方法で実装する必要はありません。別のデバイスとモバイルアプリのUIを開発し、必要なサービスを呼び出すだけです。

于 2019-09-09T09:38:01.780 に答える