我是 yeoman 的 angular fullstack 新手,并且似乎错误地构建了我的服务器 api 回调。我已经破解了一些代码。我知道这是错误的,但我碰壁了——任何建议都将不胜感激:
例如,如果我进行一个简单的 win32ole iTunes com 调用并返回一个文件路径:
在 client/app/main.controller.js 中的 GET 调用
$http.get('/api/iTunes/getxmlpath').success(function(path) {
$scope.myfilepath = path;
});
路由设置在 server/api/iTunes/index.js
router.get('/getxmlpath', controller.getxmlpath);
server/api/iTunes/iTunes.controller.js 的相关部分
exports.getxmlpath = function(req, res) {
getWin32OlePath(serviceCallback);
};
function getWin32OlePath() {
try {
var win32ole = require('win32ole');
var iTunesApp = win32ole.client.Dispatch('iTunes.Application');
var xmlpath = iTunesApp.LibraryXMLPath();
console.log('got itunes xml path: '+xmlpath);
return res.json(200, xmlpath);
} catch (err) {
return handleError(res, err);
}
}
/********
error handle the callbacks
**********/
var serviceCallback =
function(response){
return function(err, obj){
if(err) {
response.send(500);
} else {
response.send(obj);
}
}
}
咕噜服务器失败
Error: Route.get() requires callback functions but got a [object Undefined]