2016-03-24 10 views
0

私は、同じバックエンドとデータベースを共有する複数のWebアプリケーションを開発することになっています。 私はPostgreSQLのDBを使って1つのRails JSON APIを開発することでこれを行うと考えました。次に、AJAX(JQUERYを使用)または独自のレール・コントローラーを使用して、同じJSON APIを要求する異なる「クライアント」レール・アプリケーションを作成します。同じバックエンドとデータベースを持つ異なるレールアプリを持っている

このソリューションについてどう思いますか?私は正しい方向に進んでいますか?何か良いことがありますか?

==>リクエストの発信元に応じて異なるHTMLをレンダリングする単一のレールアプリを使用することも可能かもしれないと思っていましたか?どう思いますか ?

+0

はい、リクエストの種類と出所によって異なるレイアウトとビューを表示することができます。あなたは、単一レールのアプリケーションのこのアイデアに行く必要があります。あなたのお返事には –

+0

@MuhammadYawarAliに感謝します。どうやってそれをやっているのか説明できますか(これまでは、要求のタイプに応じて異なるフォーマットをレンダリングする可能性しか見ていませんでした)。また、JSON APIのアプローチが間違っていると思いますか? –

+0

json APIのアプローチには何も問題はありません。さまざまなビューをレンダリングするレイアウト変更メソッドを使用しました。私のscenairioは、デスクトップブラウザで開いたときとモバイルブラウザで別のときに異なるビューを表示していました。要求ヘッダーに基づいています。それは正常に動作し、アプリは今ライブです。 –

答えて

0

JSONアプローチは、リクエストに基づいてアプリケーションが異なる方法で処理するよりも時間がかかります。 jsonオブジェクトを構築して解析し、そのオブジェクトの2方向通信を処理する必要があります。要求ごとに明らかに多くの作業が必要です。

すべての種類の情報は、受信要求の送信元のrequest.refererなど、コントローラの要求オブジェクトから見つけることができます。この情報を使用すると、データをユーザーに提供する方法を決定することができます。

+0

真実は私がすでにJSON APIのアプローチから始めたことです。私はゼロから戻ってくるかもしれません。私はまた、基本的なパターンは、最初にJSON応答をレンダリングするAPIを呼び出す責任があるクライアントのレールのアプリケーションのコントローラを通過する必要があるので、私のアプリはAPIのアプローチでは非常に遅いことに気づいた。これに固執すれば、AJAXを使用してAPIを非同期で直接呼び出すようにリクエストすることを考えていましたが、Railsをクライアントアプリケーションに使用する機会はもうありません。 wouldnt AngularJSまたはReactJSは、その後、より良い選択ですか? –

関連する問題