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

1.1K
Vistas
Mongodb y Node: node:internal/modules/cjs/loader:936 throw err

Recibo un error de una aplicación de Node. Busco en Internet pero no encontré ninguna solución, todo es igual que el video que he visto, en el video no hay error, pero en mi código este error ocurrió una y otra vez,

  • Mi pregunta es ¿qué es la afirmación err?
  • cómo lidiar con este error,
  • porque se me ocurrio este problema

Esta es mi aplicación.js

 //jshint esversion:6 const MongoClient = require('mongodb').MongoClient; const assert = require('assert'); // Connection URL const url = 'mongodb://localhost:27017'; // Database Name const dbName = 'fruitsDB'; // Use connect method to connect to the Server MongoClient.connect(url, function(err, client) { assert.equal(null, err); console.log("Connected correctly to server"); const db = client.db(dbName); // Insert a single document db.collection('inserts').insertOne({a:1}, function(err, r) { assert.equal(null, err); assert.equal(1, r.insertedCount); // Insert multiple documents db.collection('inserts').insertMany([{a:2}, {a:3}], function(err, r) { assert.equal(null, err); assert.equal(2, r.insertedCount); client.close(); }); }); });

cuando escribo en gitbash node app.js, se produjo este error, esta es la consola

 $ node app.js Connected correctly to server node:assert:123 throw new AssertionError(obj); ^ AssertionError [ERR_ASSERTION]: 1 == undefined at D:\text editor\web_pros\FruitsProject\app.js:21:12 at D:\text editor\web_pros\FruitsProject\node_modules\mongodb\lib\utils.js:5 10:9 at D:\text editor\web_pros\FruitsProject\node_modules\mongodb\lib\operations \execute_operation.js:48:55 at D:\text editor\web_pros\FruitsProject\node_modules\mongodb\lib\utils.js:5 10:9 at completeEndSession (D:\text editor\web_pros\FruitsProject\node_modules\mo ngodb\lib\sessions.js:147:17) at D:\text editor\web_pros\FruitsProject\node_modules\mongodb\lib\sessions.j s:157:13 at maybePromise (D:\text editor\web_pros\FruitsProject\node_modules\mongodb\ lib\utils.js:496:5) at ClientSession.endSession (D:\text editor\web_pros\FruitsProject\node_modu les\mongodb\lib\sessions.js:133:41) at D:\text editor\web_pros\FruitsProject\node_modules\mongodb\lib\operations \execute_operation.js:48:36 at D:\text editor\web_pros\FruitsProject\node_modules\mongodb\lib\operations \insert.js:53:13 { generatedMessage: true, code: 'ERR_ASSERTION', actual: 1, expected: undefined, operator: '==' }

Veo videos más antiguos e intento conectar la aplicación a la base de datos. tal vez hay algunas actualizaciones

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

El resultado del método insertOne no tiene la propiedad insertedCount porque, si tiene éxito, el número de documentos insertados será, por definición, 1 .

Si la base de datos no puede insertar el documento, llamará a la devolución de llamada con un error no nulo. Esto se aplica tanto a errores generales como a llaves duplicadas.

Por lo tanto assert.equal(null, err) ya comprueba lo que desea que assert.equal(1, r.insertedCount) compruebe. Simplemente puede eliminar esa aserción insertedCount .

Tenga en cuenta que la propiedad insertedCount existe para insertMany , por lo que la afirmación allí es válida.

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