0

我是节点的新手。我将这个测试用例写入 r/w mysql 数据库。但是,点击注册按钮后。数据库中的表被更新,而客户端没有响应。在启动时,它显示套接字挂起错误。在我将节点更新到 v.0.8.25 之后。现在什么都没有显示。任何人都可以帮助我吗?

我的客户端代码非常简单:

var username = $('#username').val().trim();
var pwd = $('#password').val().trim();
$.post('http://myserver/' + 'reg', {username : username , password: pwd}, function(data){
    window.alert( data);
});

我的服务器代码:

app.get( "/reg" , route.reg);
app.post( "/reg", route.doreg);

in route.js:
exports.doreg = function( req ,res){
var msg = req.body;

userOperator.createUser( msg.username , msg.password ,  function( err , user){
   if( err ){
       res.send( {code: 501});
       res.end();
   }else {
       res.send({ code:200, username: user.name , password: user.password});
   }
});
};enter code here
4

1 回答 1

2

如果没有抛出错误,您就不会end响应。

else {
       res.send({ code:200, username: user.name , password: user.password});
       res.end(); //missing
}

顺便说一句,第一个参数send()可以是状态码:

 if( err ) {
       res.send(501);
 } else {
       res.send(200, username: user.name , password: user.password});
 }
 res.end();
于 2013-07-25T07:48:50.963 回答