免责声明:我是NoSQL数据库的新手,如果有什么不清楚的地方,欢迎评论和问题来澄清。
我正在调用一些第三方web服务来获得JSON响应,但需要一种方法来缓存响应以避免重复调用,因为每个响应在远程实体之间是恒定的。
问题。
我选择了mongodb,它是工作的正确工具,响应实体有冗长的模式和猫鼬强迫我定义一个,是否有一种方法可以避免必须定义模式,只是通过一些id保存响应并稍后读取。如果有人可以帮助检查条件A.缓存和B.保存。
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
if() { // A. condition to check if cached response is available
} else { // call web service
http.request({}, function (response) {
var buffers = [];
response.on('data', function (chunk) {
buffers.push(chunk)
});
response.on('end', function () {
var data = Buffer.concat(buffers).toString();
// B. how to save data to a mongoose db
});
})
}
如果方法不正确,我应该使用其他东西,那么也请启发。
如果没有可用的模式,则不要使用mongoose。直接将json存储为mongo文档。
https://docs.mongodb.com/getting-started/node/client/https://docs.mongodb.com/getting-started/node/update/