【发布时间】:2016-09-29 13:07:40
【问题描述】:
我是 NodeJS 新手,我正在尝试使用 Angular 将数据发送到服务器
$scope.logearse = function () {
$http({
method: "POST",
url: "http://localhost:8888/login",
data: $scope.usuario
}).then(function successCallback(response){
console.log(response)
}, function errorCallback(error){
alert("No se han podido enviar los datos")
})
}
但在服务器中,当我尝试接收请求时,总是{}
http.createServer(function(peticion, respuesta){
console.log(peticion.url)
console.log(peticion)
// We begin with "login"
if (peticion.url == "/login") {
console.log("Inside of Login)
var datosUsuarioLogin = '';
peticion.addListener("data", function(chunk) {
datosUsuarioLogin += chunk;
// function called when a new chunk of data is recibed
});
peticion.addListener("end", function() {
// When the data is recibed is transformed in JSON
var datosUsuarioLoginObjeto = querystring.parse(datosUsuarioLogin);
recuperarDatos(datosUsuarioLoginObjeto, respuesta);
console.log(datosUsuarioLoginObjeto) //return {}
});
//End of LOGIN "if"
}
}).listen(8888)
如果我使用带有常规提交的表单,则相同的代码可以工作,但如果我尝试使用 ANGULAR 的 $http,则不会。
我尝试使用“params”而不是“data”,但是“params”转换了 URL 中的数据并且代码不起作用。
【问题讨论】:
-
您是否设置了正确的标头以及诸如 'Content-Type': 'application/json' 之类的请求
-
如果是这种情况,我们可能需要确认 $scope.usuario 发生了什么。 .
-
代码中那些非英语的 cmets 没有帮助
-
现在用英文评论。 $scope.usuario 是一个 Json。我使用 'Content-Type': 'application/json' 没有成功
标签: javascript angularjs node.js server