2016-05-02 13 views
-2

私は、アプリケーションの開発において、開発されたAPIをクライアントアプリケーションとモバイルアプリの両方で使用できるかどうかを知りたいと思いますか? 例えば、Symfony 2で製品を管理するAPIを持っている。Webアプリケーションを完成させるために、AngularJsでクライアントアプリケーションが開発されている。モバイルアプリとウェブクライアントアプリの両方でREST APIを使用できますか?

私は懸念しているのは、この同じAPIをモバイルアプリに使用するか、モバイルアプリ向けに別のAPIセットを作成するのがベストプラクティスですか?

+0

なぜREST APIは、どこから呼び出されたのかを知る必要がありますか? – nnnnnn

+0

Angular.jsやReact.jsの呼び出しがHTTP PATCHメソッドをサポートしていますか? –

+0

'$ http({'method': 'PATCH'}); ' –

答えて

1

t1; dr; - はい、そうすべきですが、欠点を考慮してください!


理想的には、すべてのクライアントに同じREST APIを使用する必要があります。これにより、より保守性の高いシステムになります。 Angular.jsには特別な工場/サービスresourceがあり、あなたのために大変な作業をします。

しかし、私たちは理想的な世界に住んでおらず、あなたはいくつかの "副作用"に直面するでしょう。たとえば、数年前、Twitterはこれを正確に実行することに決めました。そのウェブサイトはJavaScriptを読み込み、つぶやきのためにREST APIにのみクエリを使用していました。これは「遅い」ページレンダリングの認識につながった。 Twitterはそのアイディアを落とした。

だから、迅速な答えは「はい、あなたがすべき」ですが、現実世界の答えは「は、だけにしての利点と欠点を、考えてみましょうあなた自身の決断を作ります」。

+0

私はさらに援助が必要です。エンタープライズ規模では、レスポンスを最適化するために取ることができる即時の行動のいくつかを挙げることができます。より多くの利点はまだ多くの欠点をはるかに上回っていますか?ありがとう –

+0

私は、REST APIをどのように最適化するかについての私の研究を指導します。実際の世界のヒントを私に提供すれば気にしません。ありがとう。 –

+1

あなたのビジネスモデルがSEO、ウェブページのレンダリング時間を気にせず、いくつかのチーム(コアAPI、ウェブアプリケーションなど)に分割された場合、より効率的に機能する場合は、この道を踏むことを検討することができます。しかし、一般的には示唆されている。回避策として、多くの組織は1つの残りのAPIを使用しますが、サーバー側で行います。それは2つの世界の中で最高です。 – Uzbekjon

1

はい、実際にそれが私たちがREST APIを作る主な理由の1つです... あなたが作るクライアントアプリケーションごとに複数のサーバーバックエンドロジックを構築する必要はありません。

私はReact.jsのために知らないが、角度は非常によくそれを扱うん:)

$ HTTPを見てくださいと$リソース

https://docs.angularjs.org/api/ng/service/ $ HTTP#

にパッチを適用
+0

Angular.jsはHTTP PATCHメソッドをサポートしていますか? –

+1

フレームワークについての質問ではなく、いくつかのHTTP動詞をサポートするWebブラウザについて... – n00dl3

+0

それを指摘してくれてありがとうございます –

1

はい、AngularJSは、documentation over hereにパッチを表示します。

ReactJSでは、使用しているライブラリによって異なります。しかし、Reactは実際には小さなライブラリーなので、PATCHを作るためにプレーンJavaScriptを使用することは自由です。 See here

関連する問題