Avoir quelques erreurs bizarres avec mon serveur nodejs que je ne rencontrais pas auparavant. Je reçois l'erreur: "TypeError: Impossible de lire la propriété 'length' de undefined" J'utilise formidable pour traiter toutes les données de formulaire de ma page html. J'ai essayé beaucoup de choses pour le réparer, et j'ai regardé en ligne pour les personnes ayant des problèmes similaires mais sans aucun résultat. Ceci est mon code:Rencontre "impossible de lire la propriété 'length' de undefined"
var http = require('http');
var fs = require('fs');
var formidable = require("formidable");
var util = require('util');
var exec = require('child_process').exec;
var ram;
var disk;
var cpu;
var port = 80;
var ip = "172.19.0.1";
//als de user request doet naar form forward dan naar displayForom, else naar processallfieldsoftheForm om
//invoer van de gebruiker te verwerken
var server = http.createServer(function (req, res) {
if (req.method.toLowerCase() == 'get') {
displayForm(res);
} else if (req.method.toLowerCase() == 'post') {
processAllFieldsOfTheForm(req, res);
}
});
//geef de html form weer
function displayForm(res) {
fs.readFile('form.html', function (err, data) {
res.writeHead(200, {
'Content-Type': 'text/html',
'content-length' : data.length
//error is here
});
res.write(data);
res.end();
});
}
//functie om invoer van de gebruiker te verwerken serverside en als variabele op te slaan.
function processAllFieldsOfTheForm(req, res) {
var form = new formidable.IncomingForm();
form.parse(req, function (err, fields, files)
{
ram = (fields.mem)
disk = (fields.dsk)
cpu = (fields.cpu);
}
);
}
//exec('cat /home/js/text123', function(err, stdout, stderr){
//console.log(stdout);
//});
//serverside logs om te illistreren waar de server naar luistert, en waar hij luistert
server.listen(port, ip);
console.log("server lisening on " + port + " adress: " + ip);
Vérifiez le contenu de 'err' – Andreas