我正在使用 mongoosastic 在 mongoose 中执行搜索操作。我已按照此处提到的链接中给出的说明进行操作,但我没有得到预期的输出。当我使用搜索查询时,我得到了
{“状态”:“404”,“消息”:“未找到”}
var express = require('express');
var mongoose = require('mongoose');
var mongoosastic = require('mongoosastic')
/*
var textSearch = require('mongoose-text-search');
var lmongo = require('lmongo');
*/
var bodyParser = require('body-parser');
var app = express();
app.use(express.static(__dirname + '/public/app'));
var port = 9200;
app.listen(port, function() {
console.log("listening on", port);
});
var router = express.Router();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(router);
mongoose.connect('mongodb://localhost/search');
var Schema = mongoose.Schema;
var customerSchema = new mongoose.Schema({
customerDetails: {
name: {
type: String,
es_indexed: true
},
email: String
},
Description: String,
createdAt: {
type: Date,
default: Date.now
},
updateAt: {
type: Date,
default: Date.now
},
}, {
strict: false
}, {
collection: "customerDetails"
});
customerSchema.pre('update', function() {
this.update({}, {
$set: {
updateAt: new Date()
}
});
// next();
})
customerSchema.plugin(mongoosastic, {
hosts: [
'localhost:9200'
]
});
var Customer = mongoose.model('customer', customerSchema),
stream = Customer.synchronize(),
count = 0;
stream.on('data', function(err, doc) {
count++;
});
stream.on('close', function() {
console.log('indexed ' + count + ' documents!');
});
stream.on('error', function(err) {
console.log(err);
});
/*###################################################################################################*/
router.route('/cust/index/search') /*enabling search using mongoosastic*/ /*getting as msg not find */
.get(function(req, res) {
Customer.search({
query_string: {
query: "Sures"
}
}, function(err, results) {
if(err)
res.send(err);
res.send(results);
console.log(results);
})
})