ウェブサイトとモバイルアプリの両方を持つ企業のAPI /バックエンドアーキテクチャの「ベストプラクティス」とは何ですか?ウェブサイトとモバイルアプリの共有API /バックエンド?
いくつかのアーキテクチャのアイデア:
- 要求は、Webブラウザやモバイルアプリから来ているかどうかを確認する単一のAPI、それに応じてHTMLまたはJSONで応答
- 2つの別々のAPIのための1 (HTMLで応答する)WebサイトとJSONで応答するモバイルアプリ用のWebサイト
- JSONだけを返す単一のJSONベースのAPI。ウェブサイト(クライアントサイドのJavaScriptなど)は、JSONの解析とレンダリングを担当します。
StackOverflowの例
例として、StackOverflowのにHTTP GET "/質問" 要求を提出することを検討してください。上記の最初のアーキテクチャは、次のようになります。
Webブラウザ:すべての質問
- https://stackoverflow.com/questions
- Serverのユーザー・タイプは、データベースを照会しますquestions.htmlで応答します。
- クライアントのウェブブラウザが質問を返します。
モバイルアプリ:
- ユーザーは、すべての質問
- Serverは、JSONデータが
- すべての質問を含むクライアントのモバイルアプリはJSONデータとディスプレイを解析して応答するためにStackOverflowのモバイルアプリ
- Serverがデータベースを照会開きます〜へユーザ