2

データベースに接続するためにバックエンドでルビーを必要とするいくつかのバックボーンアプリに取り組んでいます。デモ用に Ruby を除外しようとしています (これが本番環境のセキュリティ リスクであることは承知しています)。

彼らが持っていたAngularJSサイトと例(http://jsfiddle.net/api/post/library/pure/)で、バックエンドlangなしでmongolabsサービスに直接接続していることに気付きました。

// This is a module for cloud persistance in mongolab - https://mongolab.com
angular.module('mongolab', ['ngResource']).
    factory('Project', function($resource) {
      var Project = $resource('https://api.mongolab.com/api/1/databases' +
          '/angularjs/collections/projects/:id',
          { apiKey: '4f847ad3e4b08a2eed5f3b54' }, {
            update: { method: 'PUT' }
      }
  );

  Project.prototype.update = function(cb) {
    return Project.update({id: this._id.$oid},
        angular.extend({}, this, {_id:undefined}), cb);
  };

  Project.prototype.destroy = function(cb) {
    return Project.remove({id: this._id.$oid}, cb);
  };

  return Project;
});

これはバックボーンで可能ですか?もしそうなら、どうすればそれを行うことができますか?私はAngularJSがそれをエミュレートするためにどのようにそれを行ったかを見ようとしましたが、私はバックボーンにかなり慣れていないため、彼らがどのようにしているのかをよく理解していません.

4

1 に答える 1

2

AngularJS の例は、すべてのボイラープレート コードを自分で書く手間を省くための Mongolab のラッパーです。結局のところ、サービスに直接アクセスするために必要なことは、ajax から呼び出すことだけです。

$.ajax( { url: "https://api.mongolab.com/api/1/databases/
                     your_db/collections/your_collection?apiKey=your_key",
      data: JSON.stringify( { "your_field" : "your_data" } ),
      type: "POST",
      contentType: "application/json" } );

編集:

MongoLab が 2 要素認証をサポートするようになりました

于 2013-01-19T08:18:03.403 に答える