我无法弄清楚如何从第三方API保存json对象到我的个人localhost mongodb。我相信我应该在api控制器中创建另一种方法,但不知道应该使用哪种方法,任何帮助都会非常感谢! 这是我的代码抱歉,如果这是一个愚蠢的问题。如何从第三方api保存JSON对象
//server.js
var express = require('express');
var bodyParser = require('body-parser');
var path = require('path');
var mongoose = require('mongoose');
var Router = require('./routes');
var morgan = require('morgan');
var port = process.env.PORT || 3000;
var app = express();
//database connect
mongoose.connect('mongodb://localhost/Emagispace')
app.use(
express.static('views'),
bodyParser.json(),
bodyParser.urlencoded({extended : true}),
morgan('dev')
);
Router(app);
app.listen(port,()=>{
console.log(`Server running on ${port}`);
//Routes
var API = require('./controllers/api');
module.exports = (app)=>{
app.get('/', (req, res)=>{
res.sendFile('index.html', {root : './views'});
});
app.get('/api/emagispace', API.product)
}
//API controller
var request = require('request-promise');
var baseURI = 'example';
module.exports = {
product : (req, res)=>{
request({
method : 'GET',
url : `${baseURI}/api/emagispace/${req.query.products}`
})
.then((resp)=>{
console.log('Product list : ', resp);
res.send(resp).save();
})
}
}
要保存在猫鼬中,你想要调用保存在猫鼬对象上,而不是响应对象。我不是猫鼬的用户,但它可能类似于 - >'mongoose.products.save(resp)' – Keith
我会试试看,谢谢Keith –