ホームページ >バックエンド開発 >PHPチュートリアル >JavaScript - API のみを提供するバックエンドを設計するにはどうすればよいですか?
例えば、フロントエンドがreactやvueなどのフレームワークを使用している場合、ajaxを介してバックグラウンドで対応するデータを取得したいだけです。またはバックエンドを選択するにはどうすればよいですか?以前にも Django を使って似たようなことを書いたことがありますが、依然として Django 自体が提供するビューから抜け出せないように感じています。
例えば、フロントエンドがreactやvueなどのフレームワークを使用している場合、ajaxを介してバックグラウンドで対応するデータを取得したいだけです。またはバックエンドを選択するにはどうすればよいですか?以前も Django を使って似たようなことを書いたことがありますが、依然として Django 自体が提供するビューから抜け出せないように感じています。
http://www.django-rest-framework.org/
1. まず、バックエンド言語の選択は重要ではありません。どの言語に慣れているかによって、より早く始めることができます。
2. 達成したい効果は、表と裏を分離することです。バックエンドは、フロントエンドが必要とするデータ形式を返す API を提供し、フロントエンドは API を通じてデータを取得します。フロントエンドはページ自体をレンダリングします。
3. 私は PHP で作業しているため、バックエンドの構築には PHP を使用することをお勧めします。背景はMVCで区切ります。バックエンドはAPIのみを提供するため、Vは省略可能です。まず、設定可能なルーティングをサポートするフレームワークを選択し、M がデータベースを操作してバックグラウンドからデータを取得し、C がデータを json 形式に変換してフロントデスクに送信することをお勧めします。フレームワークのルールに従ってルーティングを設定し、Controller コードと Model コードを記述するだけです。フレームワークには、ThinkPHP や Laravel などが含まれます。
フロントエンドの経験に基づくと、Java/PHP/golang などのバックエンド言語を試す必要はありません。nodejs を直接使用するだけで済みます。また、node も非常に強力です。 。 APIが単純な場合は、ノードのhttpモジュールを直接使用します。複雑な場合は、express http://expressjs.com/en/starter/installing.htmlを使用します
json/jsonpオブジェクトを直接返すことができます
私は Django を使用したことがありませんが、Dj は間違いなく json ビューを返すことをサポートしていると思います。単純に Django json view というキーワードを検索しました。
http://stackoverflow.com/questions/9262278/django-view-returning-json-without-using-templateそれはあなたが望むものを満たすはずです。
@hsfzxjy による発言
Django のビューの戻り値を変更するのは非常に簡単です。データ インターフェイスを作成する必要がある場合は、Mixin を作成してそれをミックスするだけです。次の例を見てください: JsonResponseMixin
Djangoクラスビューの
メソッドをオーバーライドして、jsonなどのデータを返させることです。使用するときは、次のように書くだけです: render_to_response
リーリー
私は最近 Lumen にハマっています。Laravel に基づいたこのエレガントなソリューションを試してみてください。
Reactjs と RESTful API を使用したい場合、フロントエンド ディスプレイは MVC を使用すべきではないと思いますが、flux を使用する必要があります
私の Flux フレームワークは、厳密に Flux プロセスに従っている altjs を使用しており、React のモジュール性も非常に優れていますうまく機能します。http://alt.js.org
を参照してください。
jsonを返すだけです。
現在、Yii2 の残りの部分を使用して、フロントエンド アクセス (IOS、ANDROID、WEB) 用の標準 API を提供しています
Django は反応マウント用に 1 つの div のみを提供します