0

html および js ファイルを Apache Web サーバーまたは IIS から (node.js または cupApp からではなく) 提供する場合、Backbone.js を CouchDB にきれいに接続する方法を理解するのに苦労しています。

リクエストを抽象化するために backbone.js CouchDB 拡張機能を使用する必要がありますか? もしそうなら、どれ?

Backbone.js を CouchDB RESTful インターフェイスに直接接続する必要がありますか、それとも中間の PHP レイヤーを使用する必要がありますか (私は PHP には精通していますが、Java やその他のサーバー側のセットアップには精通していないため)。もしそうなら、どれ?

データベースとの対話を妨げている「同一オリジン ポリシー」に対処する最善の方法は何ですか?

基本的に、backbone.js を使用して、多数のID、ID の配列、またはすべての IDGETから json ドキュメントを作成するきちんとした方法が必要です。collectionsまた、2 番目の管理 Web インターフェイスから、更新、作成、および削除できるようにする必要があります。id

4

2 に答える 2

2

CouchDBを使用するために拡張機能は必要ないと思います。

あなたがする必要がある主なことは、すべてのモデルでidAttributeをに設定することです。_id

また、CouchDBとクライアントの間に中間層を配置することをお勧めします。ユースケースが非常に単純でない限り、クライアントに送信する前にドキュメントをすばやく変換する必要があります。これは、PHP、Expressを使用して行うことができ、CouchDBに近づきたい場合は、CouchAppを使用できます。

SOPをクリーンにバイパスしたい場合は、現在ほとんどのブラウザでサポートされているCORSを確認してください。

私はPHPに精通していませんが、Expressfelix-couchdbを使用してこれを行う方法は次のとおりです。

var couchdb = require('felix-couchdb'),
    client = couchdb.createClient(config.port, config.host),
    myDb = client.db('my_db');

// (... express boilerplate)
app.get('/resource/:resource_id', function (req, res) {
  myDb.getDoc(req.params.resource_id, function (err, doc) {
    if(err)
      return res.send(err);

    res.send(doc);
  });
});
于 2012-10-12T09:08:55.693 に答える
0

私はhttps://cloudant.com/blog/backbone-and-cloudant/で非常に幸運でした

于 2013-02-06T21:57:30.507 に答える