Javascript passportjs集成后GET方法不起作用

Javascript passportjs集成后GET方法不起作用,javascript,json,angularjs,rest,passport.js,Javascript,Json,Angularjs,Rest,Passport.js,我在route.js中有以下REST方法 app.get('/api/todos', isAuthenticated, function(req, res) { DB.TodoTable.find() .exec(function(err, todos) { res.json(todos, function(err){ if (err) console.log(err); }); // return all todo

我在route.js中有以下REST方法

app.get('/api/todos', isAuthenticated, function(req, res) {
    DB.TodoTable.find()
    .exec(function(err, todos) {
        res.json(todos, function(err){
            if (err) console.log(err);
        });     // return all todos in JSON format

        console.dir(res);
    });
});
调试时,我发现'res'对象的'statusCode'字段保存数据。这绝对是错误的。也可能是因为这个原因,它在角的一侧没有被接收到。 例如

在controller.js中,我有另一种方法:

Todos.get()
    .success(function(data) {
        console.info("Data received from server:");
        console.dir(data);
    });
这里我得到的“数据”是“”。这在passportjs集成之前就已经起作用了


这真的是passportjs的原因吗。如果没有,我怎么能让它工作呢

在从'res.json'方法调用中删除回调后,我实现了这一点

在这种情况下,回调会导致意外行为。不确定这背后的确切原因是什么

但以下工作:

app.get('/api/todos', isAuthenticated, function(req, res) {
    DB.TodoTable.find()
    .exec(function(err, todos) {
        res.json(todos);     // return all todos in JSON format

        console.dir(res);
    });
});

不,不是因为护照。您是否处理
statusCode
,例如,一些中间件,如
已验证
?@vesse不,我没有在任何地方使用过它。哦,对不起,我甚至没有看那个部分。是的,您不能回调
res.json
。它仍然可以,因为在以前的版本中,您也可以为它提供
statusCode
,即
res.json(400,{status:“error”})无问题。我想我会再试一次。它成功了。(非常感谢)
app.get('/api/todos', isAuthenticated, function(req, res) {
    DB.TodoTable.find()
    .exec(function(err, todos) {
        res.json(todos);     // return all todos in JSON format

        console.dir(res);
    });
});