1

Node.js を学習するためのテスト アプリを作成しようとしています。私はワードプレスのバックグラウンドから来ており、Apache がほとんどのバックエンド ロジックをセットアップしてくれました。しかし今、私は自分自身を構築する必要があります。サーバー側からクライアント側に JSON ファイルを提供する方法について質問があります。ワークフローとは何ですか -- Backbone.js はすべてのクライアント側のデータ操作を処理し、couchDB から送信/保存/取得/フェッチし、NODE.js バックエンドから JSON オブジェクトを提供しますか?

HTTP サーバーの構築にExpress Microframeworkを使用し、CouchDB NoSQL データベースにアクセスするための Cradle ミドルウェアをインストールしました。クライアント側の HTML (Jade テンプレート エンジン) から CouchDB データベース/ドキュメントにデータを正常に投稿し、Cradle ミドルウェアを介してサーバーからそれらのデータを取得することができました。物事はうまくいきます。しかし、それはすべてバックエンドによって行われました。

クライアント側の Javascript に Backbone.js を使用したいと考えています。Backbone.js は、HTTP サーバーから送り返される JSON オブジェクトを探します。Cradle Middleware は JSON オブジェクトを作成できますが、Jade テンプレートに直接送信することしかできません。データ オブジェクトを反復処理するために Jade 構文をループに使用できますが、Backbone.js がすべてのデータ エントリを処理するために必要なものをまだ満たしていません。ajax経由でJSON objを取得する必要があることを認識しています(HTTPによって生成されたファイルをクライアントに送り返すか、クライアントに直接オブジェクトを送信します)。クレイドルミドルウェアではそれができませんでした。

私はこの質問についてさらに調査を行いました。私はCouchAppを試しましたが、それは私が必要とすることを行います。Backbone.js を使用してすべてのデータを処理し、CouchDB データベースからデータを送信/保存/フェッチします。ただし、これは CouchApp での実行であり、Express Node.js ワークフローではありません。(多分私は間違っているか、それがどのように機能しないか)

backbone-couchdb.jsを試しました。詳細を読みましたが、必要なものを取得するのに役立つかどうかはまだわかりません. (もっとチュートリアルやコード例が必要かもしれません)。これら2つを接続し、NODE.jsバックエンドで何らかの形でそれらを提供するには、バックボーンCouchDBドライバーが必要だとまだ考えています。

JSON ファイルが Node.js によってどのように提供されているか、backbone.js がデータの保存/フェッチ/CouchDB からの取得とどのようにやり取りするかについて教えてくれる人はいますか? ベスト プラクティス / ワークフローは何ですか? その他の優れたリソース、コード例、便利なツールはありますか?

4

1 に答える 1

1

Cradle Middleware は JSON オブジェクトを作成できますが、Jade テンプレートに直接送信することしかできません。

これは正しくありません。テンプレートをレンダリングせずにjsonを送り返すことができます。

function(req, res, next){
  db.view('user/byUsername', { key: 'luke' }, function (err, doc) {
    res.send(doc); // or res.json(doc);
  });
}
于 2012-05-31T15:04:51.927 に答える