mongodb监听过期数据
时间: 2023-11-17 22:58:04 浏览: 230
MongoDB提供了TTL(time to live)索引,可以自动删除过期的数据。当创建一个TTL索引时,需要指定一个过期时间,MongoDB会在指定的时间后自动删除过期的数据。可以使用MongoDB的watch()方法来监听过期数据的删除事件。当一个过期数据被删除时,watch()方法会返回一个删除事件,可以在回调函数中处理该事件。需要注意的是,watch()方法只能在MongoDB 4.0及以上版本中使用。以下是一个监听过期数据的示例代码:
```
const MongoClient = require('mongodb').MongoClient;
const uri = 'mongodb://localhost:27017';
const client = new MongoClient(uri, { useNewUrlParser: true });
client.connect(err => {
const collection = client.db("test").collection("data");
const filter = { operationType: 'delete' };
const options = { fullDocument: 'updateLookup' };
const changeStream = collection.watch([ { $match: filter } ], options);
changeStream.on('change', (change) => {
console.log(change);
});
});
```
阅读全文