私のアプリケーションでは、coucdhDBデータベースでnode.jsを使用しています。ユーザーが開始制限を10、終了制限を20と指定した場合、指定された制限でデータを取得したいのは、10から20の間のデータを取得したいという意味です。私はこれをします。
1 に答える
0
これは、NPM データ用の公開 CouchDB でそのまま実行する必要がある例です。ひどいコードと貧弱なパラメーター チェックとエラー処理を許してください。この CouchDb ビューの例では、テキスト パッケージ名を使用しているため、数値の例ではありません。代わりに、「ya」と「yaa」の間の名前のパッケージを取得するには、次の方法でこの公開データベースにアクセスします。
以下のコードを使用して、ノードサーバーに対して同等のものは次のようになります。
http://yourapi.goeshere.xxx:3000/rangetest/ya-yaa
次のコードを使用します。
var express = require('express')
, cradle = require('cradle')
, routes = require('./routes')
, http = require('http')
, path = require('path');
var app = express();
app.configure(function(){
app.set('port', process.env.PORT || 3000);
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
});
app.get('/rangetest/:from-:to', function(req, res) {
console.log('entering range test');
var theFrom = req.params.from;
var theTo = req.params.to;
console.log('range sent was ' + theFrom + " to : " + theTo);
var testConn = new(cradle.Connection)('http://isaacs.iriscouch.com', {
cache: true,
raw: false
});
var testDb = testConn.database('downloads');
var testParams = "_design/app/_view/pkg?group_level=2&start_key=%5B%22" + theFrom +
"%22%5D&end_key=%5B%22" + theTo + "%22,%7B%7D%5D";
testDb.get(testParams, function (err, testResult) {
if (err)
{
console.log(err);
res.json(500, err);
} else {
res.json(testResult);
}
});
});
于 2013-03-04T21:22:37.710 に答える