Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

248
Vistas
Make post request to Mongodb Atlas using Nodejs

I was familiar with MongodB for CRUD operation. Here, I'm trying to make simple post request on mongodB atlas but I want to know where I have done error for the connection and posting data to MongodB atlas.

Model.js

const mongoose = require("mongoose");

const Schema = mongoose.Schema;

let quizSchema = new Schema({
  title: {
    type: String,
  },
  description: {
    type: Number,
  },

  question: {
    type: String,
  },
});

const Quiz = mongoose.model("Quiz", quizSchema);
module.exports = Quiz;

index.js

I'm trying to create the database collection name "QuizDatabase" and insert the data to it.

var express = require("express");
var bodyParser = require("body-parser");
const Quiz = require("./views/model/model");

var Request = require("request");
var app = express();
app.use(bodyParser.json());


const MongoClient = require("mongodb").MongoClient;
const uri =
  "mongodb+srv://username:password@cluster0.iom1t.mongodb.net/QuizDatabase?retryWrites=true&w=majority";
const client = new MongoClient(uri, {
  useNewUrlParser: true,
  useUnifiedTopology: true,
});
mongoose.connect(uri);


var server = app.listen(process.env.PORT || 8080, function () {
  var port = server.address().port;
  console.log("App now running on port", port);
});

app.post("/new/", function (req, res) {
  Quiz.collection("QuizDatabase").insertMany(req.body, function (err, doc) {
    if (err) {
      handleError(res, err.message, "Failed to create new quiz.");
    } else {
      res.status(201).send(JSON.stringify(body));
    }
  });
});
  function handleError(res, reason, message, code) {
  console.log("ERROR: " + reason);
  res.status(code || 500).json({ error: message });
}
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

You dont have to use mongo client if you are already using mongoose. In index.js file just import the model

const Quiz = require("./model");

And you are already using mongoose to connect to db when you write mongoose.connect(uri); You don't have to use client.connect() again.

Query to insert -

Quiz.insertMany(req.body);

Your index file should look like this -

const Quiz = require("./views/model/model");

var Request = require("request");
var app = express();
app.use(bodyParser.json());


const uri =
"mongodb+srv://username:password@cluster0.iom1t.mongodb.net/QuizDatabase?retryWrites=true&w=majority";

mongoose.connect(uri);


var server = app.listen(process.env.PORT || 8080, function () {
  var port = server.address().port;
  console.log("App now running on port", port);
});

app.post("/new/", function (req, res) {
  Quiz.insertMany(req.body, function (err, doc) {
    if (err) {
      handleError(res, err.message, "Failed to create new quiz.");
    } else {
      res.status(201).send(JSON.stringify(body));
    }
  });
});
  function handleError(res, reason, message, code) {
  console.log("ERROR: " + reason);
  res.status(code || 500).json({ error: message });
}
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda