我一直收到这个错误,我不明白为什么。我没有在任何地方运行res.render,并且我没有指定视图引擎(不需要),我正在使用Angular从前端执行所有路由。
这里我正在为登录用户提出一个简单的请求:
controller.js
angular.module('myApp').controller('adminController',
['$scope', '$http',
function ($scope, $http) {
$http.get('/api/user')
.then(function(response){
$scope.user = response.data;
});
}]);
在后端,这是只返回json的路径:
api.js
router.get('/api/user', function(req, res) {
var session = req.session;
var user = db.User.findById(session.passport.user, function(err, user){
console.log(user);
res.json(user);
});
});
在我的浏览器控制台中,我收到错误消息
Cannot GET http://localhost:3000/api/user 500 (Internal Server Error)
,我的CLI正在说No default engine was specified and no extension was provided.
为什么,如果我只返回json,是表示要求查看引擎?
答案 0 :(得分:0)
您可以通过以下方式设置视图引擎:
app.set('view engine', 'html');
或
app.set('view engine', 'ejs');