2012-04-11 37 views
1

次のリンクに記載されているようにnode-couchdb-apiを使用してcouchdbを接続しようとしていますhttp://dominicbarnes.us/node-couchdb-api/.My couchdbバージョン1.1.1、nodejsバージョンが0.6.10です。node-couchdb-apiを使用してcouchdbでテンポラリビューを作成する

API http://dominicbarnes.us/node-couchdb-api/api/database/tempView.htmlで述べたように、一時的なビューを作成するために、私は次のコードを書かれています。

var couchdb = require("couchdb-api"); 
var server = couchdb.srv(localhost, 5984, false, false); 
var db = server.db("test"); 
var map = function (doc) { 
emit(null, 1); 
}; 
var reduce = "_sum"; 
var query = { include_docs: true }; 
db.tempView(map, reduce, query, function (err, response) { 
console.log(response); 
}); 

しかし、私は次の問題に直面しています。

C:\Program Files\nodejs\node_modules\couchdb-api>node server.js 
node.js:201 
throw e; // process.nextTick error, or 'error' event on first tick 
     ^
TypeError: Cannot read property '0' of null 
at C:\Program Files\nodejs\node_modules\couchdb-api\lib\util.js:24:39 
at Array.map (native) 
at Object.formatFunction (C:\Program Files\nodejs\node_modules\couchdb-api\lib\util.js:22:25) 
at Object.tempView (C:\Program Files\nodejs\node_modules\couchdb-api\lib\database.js:285:28) 
at Object.<anonymous> (C:\Program Files\nodejs\node_modules\couchdb-api\server.js:27:4) 
at Module._compile (module.js:441:26) 
at Object..js (module.js:459:10) 
at Module.load (module.js:348:31) 
at Function._load (module.js:308:12) 
at Array.0 (module.js:479:10) 

問題を解決するために私を提案してください。 ありがとうございます。

+0

ちょっとそこに、私は、このモジュールの作成者だと私はあなたの問題を成功裏に再現しました。私はバグを発見したし、新しいバージョンができるだけ早く投稿されます。 '、それはあなたの問題をクリアします。一方 –

+0

(次の20〜30分以内)、'発する(ヌル、1)の前にいくつかの空白を追加します。あなたの貴重な助けの誠実な感謝で –

答えて

3

あなたが経験していた問題については申し訳ありません。私はそのモジュールの作成者です。バージョン1.1.2をNPMにプッシュして問題を解決しました。 (そしてそれが再び起こらないことを確認するためにユニットテストが含まれます)

ちょうどnpm update couchdb-api経由で最新バージョンにアップデートして、あなたが行くように設定する必要があります。さらに問題がある場合はお知らせください。

+0

(私はバグがどこから来たことだ、それは布団にグラグラ見ていないので、先頭の空白を取り除き関数本体のために少し「プリティプリンタ」を追加)、私の尊敬を受け入れてください。最新のパッケージは動作していますが、couchdb-apiをnpmで更新しても、まだ問題に直面しています。そこで、最新のcouchdb-apiパッケージをダウンロードし、node_modulesに置き換えました。残念ながらもう一度ご迷惑をお掛けして申し訳ありませんが、adminのないdbからの一時的なビューをcouchdbで作成することができましたが、adminがcouchdbレベルであればdbからtempviewを取得できません。 {エラー: '権限がありません'、理由: 'あなたはDBまたはサーバーの管理者ではありません。' }管理者権限で一時ビューを取得する方法を教えてください。 – veerender

+0

うーん、私は認証についてのドキュメントを追加したことはないと信じられない。あなたのユーザ名/パスワードを追加するには、 'server.auth =" user:pass ";' OR 'server.auth = [" user "、" pass "];' –

関連する問題