Используя Angular 1.4.9 в инструкции связанного обещания, я пытаюсь отправить данные JSON через AJAX-запрос на сервер Node.js. Моя проблема: Node.js всегда получает ПУСТОЙ запрос от клиента, и я не могу понять, почему.
return $scope.sendFormDataAsync() //<-- sending empty request!?
.then(function(result) {
//foo
}).catch(function (err) {
//foo
});
$scope.sendFormDataAsync = function() {
return $q(function (resolve, reject) {
var fd = new FormData();
fd.append("name", $scope.name);
//fd.append("name", JSON.stringify($scope.name)); //not working either
//fd.append('imagedata', imagestring); //base64 image data added later on
$http({
method: 'POST',
url: '/savedata',
headers: {'Content-Type': undefined},
data: fd,
transformRequest: angular.identity //for sending base64 image data later on
})
.success(function(data){
resolve(true);
})
.error(function(){
reject(false);
});
});
};
Поле ввода HTML:
<input type="text" ng-model="name" name="name" />
Когда бы я ни выводил все входящие запросы на серверной стороне Node.js, req.body.name
остается неопределенным. Любые намеки почему?