在开发工具

时间:2016-07-24 07:07:35

标签: javascript angularjs mongodb

尝试使用我在数据库中创建的数据进行登录,但是当我发布用户&传回给call / api / login端点时,此端点的网络响应将停留在挂起的请求上。检查响应,它显示我正在尝试发送回mongo的有效负载数据。

我尝试在vm.loginuser控制器中放入$ q defer promise,其中调用正在进行但无效。即使是邮递员也无法进行登录过程,它也会停留在未决请求中。

Angular Ctrl:

vm.loginUser = function () {
        $http.post('/api/login', vm.userlogin).success(function(response){
            console.log('redirect to profile');
        }).error(function(error){
            console.log('err');
        });
    };

如果我使用.then代替.success,我会收到错误的“然后”未定义的错误localhost:3000/[object%20Object] 404 (Not Found)

server.js调用登录端点:

app.post('/api/login', authController.login);

模块:这个console.log在cmd上返回,如果我使用完整的代码,api卡在待处理的请求上,不确定代码是否错误或者mongoDB需要很长时间才能返回用户名和密码。

module.exports.login = function (req, res){
   res.send('test'); // is okay 
   User.find(req.body, function(err, results){
    if(err){
        console.log('Fail to login')
    }

    if(results && results.lenght ===1){
        res.json(req.body.username);
    }
 })
}

HTML:

<input type="text" class="form-control" id="username" 
    placeholder="Username" ng-model="vm.userlogin.username">

<input type="password" class="form-control" id="exampleInputPassword1" 
    placeholder="Password" ng-model="vm.userlogin.password">

<button type="submit" class="btn btn-default" 
    ng-click="vm.loginUser()">Submit</button>

1 个答案:

答案 0 :(得分:-1)

您可以针对Angular登录电话

进行测试吗?
$http.post('/api/login', vm.userlogin)
.then(function(success) {

    console.log("SUCCESS");
    console.log(success);

}, function(err) {

    console.log("ERROR");
    console.log(err);

})
.finally(function() {

    console.log("FINALLY");

});