Привет, сообщество! Сегодня днем я попытался сохранить данные, полученные от API в mongodb.В этом тесте я использовал ' пакет запроса ', но я также попробовал его с XMLHttpRequest, и происходит то же самое.Я понимаю, что проблема в зависимостях ref: (A -> B -> A), но я не смог ее решить.Если кто-то скажет мне, где искать, я был бы очень признателен!
Примечание: я пытаюсь использовать модуль http узла, но у меня проблемы с хранением из нескольких API
С уважением!
• user.controller.js
const express = require('express');
const router = express.Router();
const userService = require('./user.service');
router.post('/test', test);
module.exports = router;
function test(req, res, next) {
userService.store(req.body)
.then(() => res.json({}))
.catch(err => next(err));
}
• user.service.js
const config = require('config.json');
const db = require('_helpers/db');
const request = require('request');
const User = db.User;
module.exports = {
store
};
async function store(userParam) {
let api = request('https://swapi.co/api/people/1/', (error, response, body) => {
console.log('error:', error);
console.log('statusCode:', response && response.statusCode);
return(body);
});
const user = new User({
name: userParam.name,
swapi: api
});
await user.save();
}
• user.model.js
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const schema = new Schema({
name: { type: String, required: true },
swapi: { type: Object, required: true },
createdDate: { type: Date, default: Date.now }
});
schema.set('toJSON', { virtuals: true });
module.exports = mongoose.model('User', schema);
• db.js помощник базы данных
const config = require('config.json');
const mongoose = require('mongoose');
mongoose.connect(config.connectionString, {useNewUrlParser: true });
mongoose.Promise = global.Promise;
module.exports = {
User: require('../user/user.model')
};