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 に答える