APIとRESTAPI
私は最近この質問を投稿しました:複数のアプリケーション用のREST API?
もう少し検索してこの質問を読んだ後 https://stackoverflow.com/questions/41189842/what-is-difference-between-rest-and-api、RESTAPIと非RESTAPIのどちらを選択する必要があるかを尋ねたいですか?
なぜ私は他のスタイルよりも1つのスタイルを好む必要がありますか?
一般的な答えがあるかどうか尋ねていますが、具体的な例も示します。
RESTAPIと非RESTAPIの両方が複数のアプリケーション(PCアプリ、Androidアプリ、Webアプリなど)で使用できることを理解しています。これらすべてのアプリ(PCアプリ、Androidアプリ、Webアプリなど)が共有するバックエンドを作成して、これらすべてのアプリがバックエンドと情報を交換し、バックエンドがこのすべての情報を保存するようにしたい場合、選択したAPIのスタイルに違いはありますか?
違いがない場合でも、どちらを選ぶべきか、そしてその理由は?
回答
RESTはAPIの一種です。すべてのAPIがRESTであるわけではありませんが、すべてのRESTサービスはAPIです。
APIは非常に広い用語です。一般に、あるコードが別のコードと通信する方法です。Web開発では、APIは、オンラインサービスから情報を取得する方法を指すことがよくあります。APIドキュメントには、URLのリスト、クエリパラメータ、およびAPIからリクエストを行う方法に関するその他の情報が記載されており、各クエリに対してどのような種類の応答が返されるかが示されます。
RESTは、WebAPIの構築方法に関する一連のルール/標準/ガイドラインです。これを行うには多くの方法があるため、APIを構築するシステムについて合意することで、APIを構築する際の意思決定にかかる時間を節約し、APIの使用方法を理解する時間を節約できます。
他の一般的なAPIパラダイムには、SOAPとGraphQLが含まれます。