1

Node 用の HapiJs フレームワークを使用して作成されたアプリがあり、それを CouchDb データベースに接続したいのですが、そのためのコードを見つけるのに苦労しています。

それを行うためのコードを手伝ってくれる人はいますか? それを行う「通常の」方法は何ですか?

乾杯!

4

2 に答える 2

3

そうですね、couchdb のフレームワークは必要ありません。すべては、残りの API を介して利用できます。requestモジュールを使用して、API にリクエストを行うだけです。いくつかの例: -

ドキュメントを読む

 request.get("http://localhost:5984/name_of_db/id_of_docuement",
        function(err,res,data){
      if(err) console.log(err);  
     console.log(data);
 });

ビューから読み取る

    request.get(
    "http://localhost:5984/name_of_db/_design/d_name/_view/_view_name",
        function(err,res,data){
      if(err) console.log(err);  
     console.log(data);
 });

API全体がここに文書化されています

接続を管理したり、他のデータベースで行っている可能性のあるデータベースの開閉を処理したりする必要はありません。単純に、couchdb を起動して、アプリケーションからのリクエストを開始します。

ただし、API に直接リクエストを送信するのが少し面倒な場合は、nanoを使用してみてください。これは、couchdb で処理するためのより適切な構文を提供します。

コードの一部

私はhapiに慣れていないので、リクエストに応じてどのように行うかを説明します.

ドキュメントのこの例を検討してください

var Hapi = require('hapi');
var server = new Hapi.Server(3000);
var request = require("request");

server.route({
method: 'GET',
path: '/',
handler: function (request, reply) {
    reply('Hello, world!');
}
});

server.route({
method: 'GET',
path: '/{name}',
handler: function (req, rep) {
         request.get("http://localhost:5984/name_of_db/id_of_docuement",
        function(err,res,data){
      if(err) console.log(err);  
     rep(data);
 });

}
});

server.start(function () {
console.log('Server running at:', server.info.uri);
});

エンドポイントを呼び出すと、/そのリクエスト ハンドラが実行されます。ドキュメントを取得するために、couchdb エンドポイントにリクエストを送信します。それ以外にcouchdbに接続する必要はありません。

于 2014-07-15T11:24:05.933 に答える