Могу ли я использовать axios и mongoose для создания API? Это потому, что я новичок в серверной разработке, поэтому я попробовал и у меня появилась ошибка, как показано ниже, я пытался создать API с axios и mongoose, но я не знаю, смогу ли я использовать их вместе, я быллюбезно проверить этот код, чтобы увидеть, работают ли они, но, видимо, нетТаким образом, любое предложение, чтобы код лучше или это правильно, что я делаю, есть другой способ? Я уверен, что есть, но какую рекомендацию вы, ребята, можете сделать.
Я хочу создать два отдельных файла, один для контроллеров, таких как "product.controller", и использовать мой API для выполнения всех запросов, которые могут выполнять мои разные контроллеры. нужно
Error: socket hang up
at createHangUpError (_http_client.js:323:15)
at Socket.socketOnEnd (_http_client.js:426:23)
at Socket.emit (events.js:203:15)
at endReadableNT (_stream_readable.js:1145:12)
at process._tickCallback (internal/process/next_tick.js:63:19)
product.controller.js
const Product = require('../models/product.model');
const api = require('../api/api');
mongoose = require('mongoose').set('debug', true);
// To create a new Product
exports.create = async (req, res) => {
const product = await api.create('/product', req.body);
res.status(201).send({ message: 'The product has been created successfully !', product });
};
api.js
const axios = require('axios');
const baseURL = require('../config/database');
const list = async(key) =>{
const content = await axios.get(baseURL.local.urlDataBase + key +'.json')
if(content.data){
const objects = Object
.keys(content.data)
.map(key=>{
return{
id: key,
...content.data[key]
}
})
return objects
}
return []
}
const get = async(key, id) => {
const content = await axios.get(`${baseURL.local.urlDataBase}/${key}/${id}.json`)
return {
id: id,
...content.data
}
}
const create = async(key, data) =>{
await axios.post(`${baseURL.local.urlDataBase}/${key}.json`, data)
return true
}
module.exports = {
list, create
}