Modul '../build/Release/bson'] Code kann nicht gefunden werden: 'MODULE_NOT_FOUND'} js-bson: Laden der Erweiterung c ++ bson mit reiner JS-Version fehlgeschlagen

156

Ich erhalte die folgende Fehlermeldung:

{ [Error: Cannot find module '../build/Release/bson'] code: 'MODULE_NOT_FOUND' } 
  js-bson: Failed to load c++ bson extension, using pure JS version

Hier sind meine Versionsdetails:

  • Betriebssystem: Windows 7

  • MongoDB: 2.6.5

  • Knoten: 0.12.0

Ich habe diese Dinge ausprobiert, bevor ich das Problem hier gepostet habe.

  1. Ich ging zum \node-modules\mongoose\node-modules\mongodb\node-modules\bsonOrdner und nahm unten die Änderung in der Binding-Gyp-Datei von 'include_dirs': [ '<!(node -e "require(\'nan\')")' ] bis vor 'include_dirs': ["<!(nodejs -p -e \"require('path').dirname(require.resolve('nan'))\")"]

  2. Hat diesen Befehl ausgeführt npm install -g node-gyp

  3. Ich habe die Mungo-Version auf 3.8.21 aktualisiert package.json

Nichts funktioniert. Bitte vorschlagen

navra
quelle
2
Ich habe unten von Ihnen vorgeschlagene Optionen ausprobiert, aber ohne Erfolg. Ich erhalte den folgenden Fehler: {[Fehler: Modul '../build/Release/bson' kann nicht gefunden werden] Code: 'MODULE_NOT_FOUND'} js-bson: Fehler beim Laden der Erweiterung c ++ bson mit der reinen JS-Version c: \ raj \ project \ meandemo \ node_modules \ express \ lib \ router \ route.js: 170 throw new Error (msg); ^ Fehler: Route.get () erfordert Rückruffunktionen, hat aber ein [Objekt undefiniert] an der Route erhalten. <Anonym>
navra
1
Bitte sehen Sie diese Lösung, hoffe es funktioniert! Als C ++ ist eine BSON-Erweiterung auch für mehrere andere Module erforderlich. Bitte beachten Sie, dass diese Lösung spezifisch für Microsoft-OS Win-7 stackoverflow.com/a/29714359/4154706
aitchkhan
Überprüfen Sie auch die Antworten in dieser Frage: Fehler beim Laden der c ++ bson-Erweiterung
totymedli
Mögliches Duplikat von Fehler beim Laden der c ++ bson-Erweiterung
Mitte

Antworten:

165

Finden Sie im npm Modul mongodb:

.. \ node_modules \ mongodb \ node_modules \ bson \ ext \ index.js

Ändern Sie den Pfad in die js-Version im catch-Block:

bson = require('../build/Release/bson');

Zu:

bson = require('../browser_build/bson');

Oder kopieren Sie die Datei in:

.. \ node_modules \ bson \ build \ Release \ bson

Von:

.. \ node_modules \ bson \ browser_build \ bson

anydasa
quelle
1
Genial! Lokale Umgebung, daher sollte sowieso nichts Tragisches passieren.
Manatax
4
bson = require ('../../../ browser_build / bson.js');
Robor78
25
Dies ist keine Lösung. Mit dem gleichen Ergebnis können Sie einfach Zeichenfolgen entfernen, die Fehler drucken. Dieser Fehler tritt auf, weil das native c ++ - Plugin für bson nicht gefunden wurde. In diesem Fall wird die Realisierung trotzdem verwendet.
Alendorff
4
@Alendorff Stimmt, aber das ist es, wonach die meisten von uns suchen. Das C ++ - Plugin ist mir egal, ich möchte die Warnungen entfernen, da sie den Node Inspector beschädigen. Aus dieser Perspektive ist Ihr Vorschlag (Entfernen von Fehlerdrucken) ebenfalls eine Lösung, da dies kein Fehler sein sollte, da der Code mit dem JS-Fallback einwandfrei funktioniert.
Totymedli
3
Entschuldigung, Downvoting als zweitbeste Antwort hier hat tatsächlich die richtige Lösung ohne Hack: Installieren Sie eine nicht kaputte Version des Pakets!
jrista
70

Ich hatte dieses Problem heute (19. Februar 2016) und habe es nur durch die Installation der neuesten Version von Mongoose gelöst. Versuchen Sie, dies in Ihr package.json aufzunehmen:

"mongoose": "~4.4"

Hoffentlich hilft das. Hat es für mich gelöst!

Matt West
quelle
1
Hat für mich gearbeitet. Ich denke, es ist alles ein Problem mit einer alten Mungo-Version, die ich hatte, als ich einem alten Tutorial folgte. IMO sollte dies die richtige Antwort sein.
Edward Newell
8
Beste Antwort, alle anderen über das Bearbeiten von Code innerhalb von Modulen sind Hacks, keine Lösungen
Fahrrad
2
Die einfachste Lösung, ohne sich mit node_modules / mongodb usw. herumschlagen zu müssen. Danke!
Mikeym
1
Eines der besten, einfach Mungo deinstallieren (npm Mungo deinstallieren) und erneut installieren (npm Mungo installieren)
Grijan
18

Das Problem ist, wenn Sie mongoose über npm installieren, wird davon ausgegangen, dass Sie Python auf Ihren Fenstern installiert haben und versuchen, die erforderlichen Bibliotheken zu erstellen. Da Sie kein Python haben, wird die Erstellungsphase mit einer Warnung übersprungen. Wenn Sie Ihre Anwendung starten, sind die erforderlichen Module nicht vorhanden, sodass dieser Fehler angezeigt wird.

Um die Dinge richtig zu machen, installieren Sie zuerst Python (Version 2.7) auf Ihrem Computer von: https://www.python.org/downloads/ oder wenn Sie chockolatey installiert haben, geben Sie einfach ein choco install python2.

Stellen Sie dann sicher, dass Ihre Python-Variable festgelegt ist. Sie können es an der Eingabeaufforderung wie folgt einstellen:

SET python=D:\Python27\python.exe

(Natürlich sollten Sie den Pfad entsprechend Ihrer Python-Position ändern.) Installieren Sie dann node-gyp:

npm install -g node-gyp

Jetzt können Sie Mungo oder ein anderes Modul, das das Problem verursacht, neu installieren:

npm install mongoose

Diesmal sehen Sie einige gelbe statt rote Linien, aber der Fehler ist verschwunden.

salihcenap
quelle
2
Die Python-Version ist wichtig. Node-Gyp funktioniert nicht mit Version> 3.0
MatthieuLemoine
1
Dies ist keine vollständige Lösung ... Ich erhalte immer noch den folgenden Fehler: MSBUILD: Fehler MSB3428: Die Visual C ++ - Komponente "VCBuild.exe" konnte nicht geladen werden.
Orszaczky
@TheRebel Es wird davon ausgegangen, dass die Toolchain vs2010 ist. Hinzufügen --msvs-version=2012oder 2013eje nachdem, was Sie installiert haben. zBnpm install mongoose --msvs-version=2012
RichieRich
Was tun, wenn ich die Node-App in der Heroku-Cloud bereitstelle?
jsbisht
15

Ich habe dieses Problem durch die Installation der Mogoose-Version behoben 3.8.23

npm install mongoose@3.8.23
Rishabh Garg
quelle
arbeitete hier. Ist das eine ältere Version? Warum hat es funktioniert?
Victor Ferreira
15

Das hat bei mir funktioniert. Suchen Sie in Ihrem Arbeitsbereich nach dem Text:

"../build/Release/bson"

Sie werden es wahrscheinlich in den Mungo- und Mönchmodulen finden.

Dann ersetzen Sie jeweils:

bson = require('../build/Release/bson');

mit:

bson = require('bson');

das ist alles!

Kahlal
quelle
Ich habe diesen Fehler beim Versuch erhalten, die Standardtests auszuführen, nachdem ich ein Projekt mit meanjs eingerichtet habe. Dies hat es behoben. Vielen Dank.
RaneWrites
7

Versuchen Sie npm install [email protected]und ersetzen Sie auch bson = require('../build/Release/bson');zu

bson = require('../browser_build/bson'); in node_modules / bson / ext / index.js

Raghav Manikandan
quelle
Stellen Sie sicher, dass der Pfad zu bson.js korrekt ist. Für mich bson = require ('../ browser_build / bson.js'); hat funktioniert. Überprüfen Sie auch die Version Mungo, bevor Sie mit der Installation beginnen.
Vikram Shetty
7

Das hat bei mir funktioniert:

Gehen Sie zur Datei (in Ihrem Projekt):

node_modules/mongoose/node_modules/mongodb/node_modules/bson/ext/index.js

und ändern:

bson = require('../build/Release/bson');

zu:

bson = require('bson');

Referenz: https://github.com/mongodb/js-bson/issues/118

Franco
quelle
2
Wie haben Sie dieses Problem behoben? Haben Sie Ihr node_modulesVerzeichnis in die Quellcodeverwaltung eingecheckt?
Mark Stosberg
7

Kurze Antwort

Installieren Sie die neueste Version von Mongodb.

Eine etwas längere Antwort

Stellen Sie sicher, dass Ihre package.json die neueste Version von mongodb verwendet, entfernen Sie node_modules / mongodb und installieren Sie npm erneut. Wenn Sie mongodb nicht als direkte Abhängigkeit verwendet haben, versuchen Sie herauszufinden, welches Paket mongdb verwendet. Ich benutzte:

find . -type f -name package.json | xargs grep mongodb
...
./sails-mongo/package.json:    "mongodb": "1.4.26",
...

Also habe ich ./sails-mongo/package.json aktualisiert auf:

"mongodb": "2.1.7",

Entfernen Sie dann node_modules / mongodb und installieren Sie npm erneut. Scheint jetzt in Ordnung zu sein.

Noch längere Antwort

Ich mag die derzeit vorgeschlagene Art der Verwendung nicht

require('../browser_build/bson')

Seit dem Betrachten von ../browser_build/bson.js, einer 4k + Zeilen-Datei, die auch eine "nicht native" Implementierung zu sein scheint. Obwohl es keine Beschwerden ausspuckt, wird immer noch "reine JS-Version verwendet", was eine langsamere Leistung bedeutet.

Unter https://github.com/mongodb/js-bson/issues/145 und https://github.com/mongodb/js-bson/issues/165 scheint das Problem verursacht worden zu sein durch:

antoniofruci kommentierte am 15. September 2015

Ich habe gerade herausgefunden, dass C ++ - Code vor 6 Monaten verschoben wurde und es sich nun um eine optionale Abhängigkeit handelt: bson-ext. Wenn Sie die neueste Version installieren, tritt kein Fehler auf.

Also habe ich versucht, die gesamten node_modules zu entfernen und habe immer noch den gleichen Fehler erhalten. Und wenn man sich package.json von node_modules / mongodb ansieht, ist seine Version immer noch 1.4.26, nicht die neueste Version 2.1.7.

Anscheinend kommt mein Mongodb als Abhängigkeit von einem anderen Paket, das ich installiert habe: Segel-Mongo. Das Ändern der package.json von sails-mongo und das Wiederherstellen der npm-Installation lösen das Problem schließlich.

Peter
quelle
6

Bereitstellen von Keystone JS CMS Ich hatte den gleichen Fehler und denke, die eleganteste Lösung ist folgende:

Installieren npm-check-updates:

root@keystonejs:~# npm install -g npm-check-updates

package.jsonÜberprüfen Sie in Ihrem Keystone-Site-Verzeichnis, in dem es sich befindet, die Abhängigkeiten:

debian@keystonejs:~/myproject/manalcjim$ npm-check-updates -u

Aktualisieren Sie dann alle Pakete:

debian@keystonejs:~/myproject/manalcjim$ npm install

Und schließlich, wenn Sie sich jadefür Vorlagen entschieden haben, müssen Sie möglicherweise das jadeModul explizit installieren :

debian@keystonejs:~/myproject/manalcjim$ npm install jade --save
Manuel Alcocer
quelle
5

Die markierte Antwort ist völlig falsch. Alles, was Sie tun müssen, ist, die Konsolenprotokollanweisung auszublenden und nichts zu tun, um das eigentliche Problem zu beheben. Sie können auch Ihre Augen schließen und es wird das gleiche Ergebnis erzielen.

Das Problem wird durch Node-Gyp und nur das verursacht. Der Zweck besteht darin, native Erweiterungen für bestimmte Module wie bson zu kompilieren.

Wenn es dies nicht tut , dann wird der Code auf die JS - Version Rückfall und Sie gefälligst so durch die informative Nachricht sagen:

Failed to load c++ bson extension, using pure JS version

Ich gehe davon aus, dass es bei der Frage wirklich darum geht, wie die native C ++ - Erweiterung kompiliert werden kann, anstatt die Nachricht einfach nicht zu sehen. Lassen Sie uns das ansprechen.

Damit Node-Gyp funktioniert, muss Ihr Node-Gyp mit Ihrem Node und C ++ - Compiler auf dem neuesten Stand sein (dies hängt von Ihrem Betriebssystem ab). Ebenso wichtig muss auch Ihr Modul auf dem neuesten Stand sein.

Deinstallieren Sie zuerst node-gyp und installieren Sie es erneut

npm un node-gyp -g;npm i node-gyp -g

Jetzt müssen Sie alle Knotenmodule in Ihrer App (einschließlich der nach Anforderungen installierten Module) mit bson vollständig deinstallieren und neu installieren. Das sollte den Fehler beheben. Sie können nach 'Release / bson' suchen und die Schuldigen finden.

find node_modules/ -type 'f' -exec grep -H 'Release/bson' {} \;

Deinstallieren Sie diese Module und installieren Sie sie erneut.

Einfacher ist es, einfach den gesamten node_modulesOrdner zu wiederholen :

 rm -rf node_modules
 npm cache clear
 npm i

Wenn immer noch Probleme auftreten, ist entweder 1) Ihr Modul veraltet - überprüfen Sie den Issue-Tracker im Repo oder 2) Sie haben einen potenziellen Konflikt - manchmal haben wir beispielsweise einen lokalen Node-Gyp. Sie können selbst ausführen node-gypund Versionen überprüfen.

Cyberwombat
quelle
5

Beim Erstellen des Setups für einen www.spotdekho.comneuen windows10Computer konnte ich den Befehl "nodemon web.js" aufgrund desselben Fehlers nicht ausführen

"Fehler: Modul '../build/Release/bson' kann nicht gefunden werden"

Habe es durch die folgenden Schritte behoben:

  1. Erstellen Sie den Ordner "Release" im Speicherort "node_modules \ bson \ build \"
  2. Kopieren Sie bson.js aus "node_modules \ bson \ browser_build \".
  3. Fügen Sie bson.js in den Ordner "node_modules \ bson \ build \ Release" ein.

Dadurch wird das Problem behoben.

PS: Ich benutze Mungo Version 4.8.8.

Danke :), hoffe es hilft jemandem.

Spotdekho
quelle
4

In meinem Fall haben die mit mongoose ( npm install mongoose) gelieferten Bits eine funktionierende Version des mongodbPaketsnode_modules Ordner.

Die folgenden Schritte haben mir die Fehlerbehebung erspart:

  • npm install mongoose
  • node_modules\mongoose\node_modules\mongodbin meinen node_modulesStammordner kopieren (alle mitgelieferten Versionen überschreibennpm install mongodb )
  • Ignorieren Sie den Failed to load c++ bson extension...Fehler (oder ändern Sie den Code, um das Problem nicht zu berücksichtigen).
Michael
quelle
3

Als ich solche Fehler bekam, habe ich ein Upgrade von Knoten v0.10 auf Knoten v4.xx durchgeführt. Was ich tun musste, war eine neuere Version von gcc zu installieren (ich glaube ich hatte gcc v4.4.x oder so). Ich habe auf gcc 4.7.2 aktualisiert und die Dinge haben danach funktioniert.

BT
quelle
3

Ich hatte auch das gleiche Problem mit bson.

versuchen Sie eine neuere Mungo-Version

npm install mongoose@4.4

löste das Problem.

Massimo.

Max Tamtam
quelle
3

Führen Sie diesen Befehl aus, um mongoose zu deinstallieren. npm uninstall --save mongooseInstallieren Sie ihn anschließend erneut, aber diesmal wird npmautomatisch die neueste Version von mongoose run installiert. npm install --save mongooseDies hat bei mir funktioniert.

Otoloye
quelle
2

Leider sind alle oben genannten Antworten nur zur Hälfte richtig. Es hat lange gedauert, dies herauszufinden.

Die Installation von Mongoose bson über npm löst eine Warnung aus und verursacht den Fehler ...

npm install -g node-gyp

git clone https://github.com/mongodb/js-bson.git
cd js-bson
npm install
node-gyp rebuild

Das funktioniert wie Magie !!

Rama Prashanth
quelle
2

Wenn Sie Windows 8.1 verwenden, möchten Sie möglicherweise sicherstellen, dass Sie Ihre npm-Module mit dem richtigen Visual Studio-Compiler installieren.

Ich habe Visual Studio 2012 installiert, dieser Befehl funktioniert für mich. (nach dem Löschen von node_modules dir)

npm install --msvs_version = 2012

Aus irgendeinem Grund versucht node-gyp, die falsche Version des Visual Studio-Compilers zu verwenden. Mir ist auch aufgefallen, dass der Befehl "npm install" beim Installieren der Mongodb- und Mungoose-Module eine Warnung ausgibt, dass keine Knoten-Gyp-Abhängigkeiten vorliegen.

Nachdem Sie die richtige msvs_version verwendet hatten, wurden die Warnungen zur npm-Installation sowie die Konsolenwarnung beim Ausführen meiner nodejs-App gelöscht.

Möglicherweise möchten Sie auch sicherstellen, dass Sie die richtige Python 2.7.X-Version installiert haben und nicht Python 3.0.X.

Sie müssen auch sicherstellen, dass sich Python in Ihrem Env-Pfad befindet.

Joseph Snow
quelle
Dies funktionierte für mich unter Windows 8.1 mit Visual Studio Community Edition 2013 unter Verwendung vonnpm install --msvs_version=2012
phocks
2

Das einzige, was mir unter Windows 7 (x64) hilft: https://stackoverflow.com/a/29714359/2670121

Installieren Sie Node und Python mit x32-Versionen neu.
Ich habe viel Zeit mit diesem Fehler verbracht (Fehler beim Laden der c ++ bson-Erweiterung) und schließlich, als ich das Modul node-gyp(zum Erstellen nativer Addons) und sogar das Windows SDK mit Visual Studio installiert habe, hat nodejs das zusammengesetzte Modul bson.node nicht als Modul erkannt. Nach der Neuinstallation ist das Problem behoben.

Was bedeutet dieser Fehler?

Eigentlich ist es sogar kein Fehler. Sie können immer noch Mungo verwenden. Aber in diesem Fall erhalten Sie anstelle der schnellen nativen Realisierung des bson-Moduls eine js-Realisierung, die langsamer ist. Ich habe viele Tipps gesehen wie: "Pfad tief in node_modules bearbeiten ..." - was völlig nutzlos ist, weil es das Problem nicht löst, sondern nur die Fehlermeldungen ausschaltet.

Alendorff
quelle
1

Versuchen Sie dies npm install bsonundnpm update

Raghav Manikandan
quelle
1

Sie sollten niemals Dateien im Bibliotheksordner NODE_MODULES ändern.

Diese Dateien sind das Ergebnis von npm install Befehls.

Grundsätzlich denke ich für Windows-Benutzer - der richtige Weg ist die Verwendung von VM. Das mache ich, wenn ich von zu Hause aus arbeite.

Alles was du brauchst:

for CentOS: yum install gcc gcc-c++ make openssl-devel

for Debian/Ubuntu: apt-get install build-essential

und dann npm installoder, wenn Sie es bereits getan haben -npm update

Victor Perov
quelle
Er sagt genau in der Frage, dass er Windows 7 verwendet - wie helfen CentOS- und Debian-Befehle?
Thronk
1
Oh, wirklich, mein schlechtes. Ich habe diesen Tag nicht gesehen
Victor Perov
1

Die beste Lösung für mich war ein Upgrade von Node-Mongodb 1.x auf 2.x.

jczaplew
quelle
1

Mir ist klar, dass dieser Thread mindestens 1 Jahr alt ist, aber er hat mir geholfen, wenn auch mit einem anderen Modul.

Ich habe mongoose-post-findv0.0.2 installiert und dieses Problem hat begonnen. Um das Problem zu beheben, habe ich die Vorschläge verwendet und zu \ node_modules \ mongoose-post-find \ node_modules \ bson \ ext navigiert und die Datei index.js geöffnet.

Die Datei beginnt mit einem try catch-Block, der versucht, die richtige bson-Version zu benötigen

try {
    // Load the precompiled win32 binary
    if(process.platform == "win32" && process.arch == "x64") {
      bson = require('./win32/x64/bson');  
    } else if(process.platform == "win32" && process.arch == "ia32") {
      bson = require('./win32/ia32/bson');  
    } else {
      bson = require('../build/Release/bson');  
    }   
} catch(err) {
    // Attempt to load the release bson version
    try {
        bson = require('../browser_build/bson');
    } catch (err) {
        console.dir(err)
        console.error("js-bson: Failed to load c++ bson extension, using pure JS version");
        bson = require('../lib/bson/bson');
    }
}

Dies ist die korrigierte Version. Was geschah, war, dass es versucht hat, bson von ../build/Release/bson zu laden, es nicht finden konnte und in den Haken fiel. Es wurde versucht, bson erneut von ../build/Release/bson zu laden und ist natürlich fehlgeschlagen. Also ändere ich den Pfad im Fang, um in ../browser_build/bson zu suchen. Dies hat den Fehler behoben.

Ich poste dies der Vollständigkeit halber.

Paul Stoner
quelle
1

Ich hatte das gleiche Problem nach dem Upgrade der Ubuntu-Version auf 16.04. Ich habe auf diese Weise gelöst, hoffe es hilft.

$rm -rf node_modules
$npm --save install bson
$npm --save install mongoose
$npm install
Enrico Giurin
quelle
1

In unserem Fall wurde die c ++ - Version bson nicht gefunden, weil wir uns hinter einem Unternehmensproxy befanden und etwas im BSON-Erstellungsprozess nach Dateien suchen muss. Als wir in node_modules / bson / builderror.log nachgesehen haben, haben wir einen Fehler wie den folgenden gesehen:

gyp WARN install got an error, rolling back install gyp ERR! configure error gyp ERR! stack Error: connect ECONNREFUSED gyp ERR! stack at errnoException (net.js:904:11) gyp ERR! stack at Object.afterConnect [as oncomplete] (net.js:895:19)

Was darauf hindeutete, dass der Proxy das Problem sein könnte. Das Festlegen der Umgebungsvariablen http_proxy und https_proxy hat das Problem behoben.

Es tut mir leid, dass ich Kommentare dazu wiedererweckt habe, aber ich wollte dies für alle anderen veröffentlichen, die dies in Zukunft tun, da dieser Thread bei der Lösung unseres Problems sehr hilfreich war.

Matt M.
quelle
0

Versucht npm install mongoose --msvs_version = 2012, wenn Sie mehrere Visual installiert haben, hat es für mich funktioniert

AKID Ahmed
quelle
0

Erste Kopie bson.jsCode ausbrowser_build folder

Zweitens erstellen Sie eine neue Datei bson.jsund fügen Sie Code ein

Drittens speichern Sie die neue Datei in der Nähe von in index.js.

rktel
quelle
0

Ich arbeite mit OS Windows 8.1 und hatte das gleiche Problem. Die Ursache des Problems war die Version von Python. Ich habe festgestellt, dass das Ursprungsproblem die Datei ... \ node_modules \ mongodb \ node_modules \ mongodb-core \ node_modules \ kerberos \ builderror.log überprüft.

Ich habe die richtige Version von Python (2.7.9 für 64 Bit) installiert und mein Problem behoben.

Hinweis: Die installierte Version von Python muss mindestens 2.7.5 und kleiner als 3.0.0 sein

hbuenoc
quelle
0

Ich habe es versucht, bson = require('../browser_build/bson');aber am Ende ist ein anderer Fehler aufgetreten

Die Eigenschaft 'BSON_BINARY_SUBTYPE_DEFAULT' von undefined kann nicht festgelegt werden

Schließlich habe ich dieses Problem einfach behoben, indem npm updatedas bson-Modul in Mungo behoben wird.

Onkel Jimbo
quelle
0

Ich habe also das gleiche Problem und es passiert, dass die angegebene mongoDB-URL nicht existiert. Um dies zu beheben, müssen Sie in den Ordner ".. \ server \ config \ environment" gehen und den Link zu mongoDB in der Datei "development.js" bearbeiten.

Beispiel:

// Development specific configuration
// ==================================
module.exports = {
  // MongoDB connection options
  mongo: {
    uri: 'mongodb://localhost/test2-dev'
  },

  seedDB: true
};

Ändern Sie also dieses "uri: 'mongodb: // localhost / test2-dev'" in einen echten Pfad zu Ihrer mongoDB-Datenbank.

Ich werde mich freuen, wenn mein Beitrag jemandem hilft ...

Vasilic Maxim
quelle
0

Finden Sie im npm-Modul mongodb ..node_modules \ mongodb \ node_modules \ bson \ ext \ index.js

und ändern Sie den Pfad zu js version im catch-Block

bson = require('../build/Release/bson');

zu bson = require('../browser_build/bson');

try {
        // Load the precompiled win32 binary
        if(process.platform == "win32" && process.arch == "x64") {
          bson = require('./win32/x64/bson');  
        } else if(process.platform == "win32" && process.arch == "ia32") {
          bson = require('./win32/ia32/bson');  
        } else {
         bson = require('../browser_build/bson');  
        }   
    } catch(err) {
        // Attempt to load the release bson version
        try {
            bson = require('../browser_build/bson');
        } catch (err) {
            console.dir(err)
            console.error("js-bson: Failed to load c++ bson extension, using pure JS version");
            bson = require('../lib/bson/bson');
        }
    }
user3168528
quelle