WebサービスとWeb APIについてよく耳にしましたが、それらに違いはありますか、それとも同じですか?
WebサービスとWeb APIについてよく耳にしましたが、それらに違いはありますか、それとも同じですか?
回答:
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リクエストのみを圧縮できました。
Webサービスでは、HTTPを介したマシン間通信が可能です。Web APIは、REST規則を使用するWebサービスのサブセットです(ウィキペディアの記事の要約)。コンセプトは間違いなく重複しています。Webサービスのほとんどの人の心にはまだリンクがあると思います-> SOAP / XML-RPCは、問題を不必要に混乱させる可能性があります。
最後に、いくつかの質問をして、人々の意味を明確にする必要があります。誰もが区別したり、用語を同じ意味で使用したりするわけではありません。