/ / NodeJS: app.get () ne fonctionne pas comme je l'exécutais - javascript, node.js

NodeJS: app.get () ne fonctionne pas comme je l'exécutais - javascript, node.js

Je suis nouveau sur NodeJS et voici mes routes / recom.js qui font maintenant beaucoup de choses sur la logique. Je vais déplacer les logiques ailleurs quelque part. Mais maintenant, je dois d'abord résoudre l'erreur.

exports.scrape = function(req, res) {

var APIURI = "https://www.kimonolabs.com/api/abbxqyg4?apikey=6IrCGNcorodTBSfNawS6sZkHw3LeZVIN";
var receivedJason;
res.type("text/plain");
request({
url: APIURI,
json: true
}, function (error, response, body) {
if (!error && response.statusCode === 200) {
console.log("API Retrieved Successfully!");
res.json(body);
receivedJason = JSON.stringify(body);

var node = db.createNode({hello: "world"});     // instantaneous, but...
node.save(function (err, node) {    // ...this is what actually persists.
if (err) {
console.error("Error saving new node to database:", err);
} else {
console.log("Node saved to database with id:", node.id);
}
});

}
});
};

Et c'est mon app.js

var express = require("express");
var recom = require("./server/routes/recom.js");

var app = express();

app.get("/", recom.scrape);

app.listen(process.env.PORT || 2019);

et j'ai eu l'erreur suivante:

Route.get () nécessite des fonctions de rappel mais a un [objet non défini]

Toute aide serait appréciée.

Réponses:

0 pour la réponse № 1

L'erreur semble être dans l'exportation. Dans routes/recom.js utilisation:

module.exports.scrape = function(req, res) { //...

La raison pour laquelle vous obtenez un [object Undefined] est-ce exports n'est pas le même objet que module.exportset l’article recherché n’existe donc pas.

De plus, dans app.js, vous devrez peut-être utiliser l’un des éléments suivants:

var recom = require("routes/recom.js");
// or:
var recom = require("server/routes/recom.js");

En fonction de votre structure complète.