Ich habe einen Fehler, wenn ich Daten von der Clientseite (angular.js) zur Serverseite (node.js) sende. Ich habe ein Formular erstellt, dass der Benutzer Daten eingeben dann mein Controller die Daten erhalten und es an den Server gesendet, um die Daten in Mungo und S3 (Amazon) zu speichern. Ich muß sagen, dass es funktioniert gut - ich meine ich alle Informationen speichern kann ich brauche und ich es in meiner DB sehen kann, und ich kann das Bild auf s3POST http: // localhost: 3000/Upload 500 (Interner Serverfehler)
sehen, aber ich erhalte eine Fehlermeldung: POST http://localhost:3000/upload 500 (Internal Server Error)
meine hTML-Formular:
<html ng-app="mymed">
<head>
<title>insert</title>
</head>
<body ng-controller="tryController">
<main>
<body>
<form class="form-group" enctype="multipart/form-data" method="POST" action="http://localhost:3000/upload">
<label for="inputEmail3" class="col-sm-2 control-label">Title:</label>
<input class="form-control" type="text" placeholder="Title" ng-model="Title" name="Title" required></input>
</div>
<div class="col-sm-10">
<br>
<input type="file" name="file" accept="image/*" ng-modle="file"></input>
</div>
</div>
<input type="submit" class="btn btn-default" name="send" ng-click="createInsert()"></input>
</form>
.....
<script src="js/appController.js"></script>
mein Controller:
mymedical.controller('tryController',['$scope','$http','$cookies', function($scope,$http,$cookies){
$scope.createInsert = function(){
var data = {};
data.Title = $scope.Title;
data.file = $scope.file;
$http.post('http://localhost:3000/upload', JSON.stringify(data)).then() //callback
}
}]);
Sever Seite:
exports.saveDatatry=function(request, response){
console.log(request.body);
var file = request.files.file;
var hash = hasher();
var stream = fs.createReadStream(file.path)
var mimetype = mime.lookup(file.path);
console.log(stream);
var req;
if (mimetype.localeCompare('image/jpeg')
|| mimetype.localeCompare('image/pjpeg')
|| mimetype.localeCompare('image/png')
|| mimetype.localeCompare('image/gif')) {
req = client.putStream(stream, hash+'.png',
{
'Content-Type': mimetype,
'Cache-Control': 'max-age=604800',
'x-amz-acl': 'public-read',
'Content-Length': file.size
},
function(err, result) {
var savePerTry = new personal({
Title: request.body.Title,
file: req.url
});
savePerTry.save(function(error, result) {
if (error) {
console.error(error);
} else {
console.log("saved!");
response.redirect('http://localhost:8080/tryinsert.html');
};
})
});
} else {
console.log(err);
}
}
Was muss ich tun? Danke,
haben Sie die Knotenprotokolle? 500 ist ein allgemeiner Fehler –
_ "Was ich tun muss?" _ - vor allem natürlich und natürlich: Überprüfen Sie die Fehlerprotokolle. – CBroe
das sind alle Fehler, die ich bekomme - auf der Knotenseite funktioniert es gut – user193239