Web APIとWebサービスの違いは?


回答:


86

Webサービス-W3Cによって定義された標準であるため、半自動または自動でアクセスできます(WSDL / UDDI)。すべてがXMLに基づいているため、誰でもXMLを呼び出すことができます。また、サービスのあらゆる側面が非常に明確に定義されています。パラメーターの説明の標準、パラメーターの受け渡しの標準、応答の標準、発見の標準などがあります。おそらく、標準を説明する2000ページの本を書くことができます。認証など、「標準的な」ことを行うための「追加の」標準もあります。

クライアントはかなり貧弱であるため、自動呼び出しと検出はほとんど機能していませんが、どのクライアントからでもサービスを呼び出すことができるという保証はありません。

Web APIは通常HTTP / RESTとして行われ、何も定義されていません。たとえば、出力は JSON / XML、入力はXML / JSON /またはプレーンデータにすることができます。何のための標準もありません=>自動呼び出しと発見はありません。テキストファイルまたはPDFで説明を提供したり、Unicodeの代わりにWindows-1250でデータを返したりできます。標準を説明するには、いくつかの簡単な情報を含む2ページのパンフレットで、他のすべてを定義します。

WebはWeb API / RESTに移行しています。Webサービスは、Web APIよりも優れています。開発が非常に複雑で、多くのリソース(帯域幅とRAM)を消費します。すべてのデータ変換(REQUEST-> XML-> DATA-> RESPONSE-> XML-> VALIDATION-> CONVERSION-> DATA)により、スロー。

例えば。WebAPIでは、データをパックし、圧縮して送信し、クライアントで非圧縮+解凍することができます。SOAPでは、HTMLリクエストのみを圧縮できました。


1
おかげ@Slawek、uが、それは例えばおかげで、あまりにも... better..and説明
ハリッシュKurup

2
実際には、人々はSOAPとRESTの両方を「Webサービス」と呼んでいると聞きます。ただし、Web APIはRESTである傾向があります。
ベンサーリー16年

@Slawek、あなたがそれを2000ページ対数ページと言った方法は、それ自体が複雑さの軽減を説明しています。簡単に言うと良い方法..
Jaqen H'ghar

20

Webサービスでは、HTTPを介したマシン間通信が可能です。Web APIは、REST規則を使用するWebサービスのサブセットです(ウィキペディアの記事の要約)。コンセプトは間違いなく重複しています。Webサービスのほとんどの人の心にはまだリンクがあると思います-> SOAP / XML-RPCは、問題を不必要に混乱させる可能性があります。

最後に、いくつかの質問をして、人々の意味を明確にする必要があります。誰もが区別したり、用語を同じ意味で使用したりするわけではありません。


@Berin Loritschに感謝します。そうです、それはAPIとWSの間で混乱を引き起こします。
Harish Kurup

6

Webサービスは、W3Cで規定されているように、定義されたアーキテクチャと問題ドメインへのアプローチです。

Webサービスは、さまざまなプラットフォームやフレームワークで実行される、異なるソフトウェアアプリケーション間で相互運用する標準的な手段を提供します

Web APIは概念であり、概念の実装方法に関する手段を抽象化します。

素人の言葉では...ウェブAPIはモーターであり、WSはBMW N53です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.