我使用Yo MeanJs生成器开始使用。我是MeanJs的初学者。看起来很复杂。
实际上,我的Meanjs应用程序需要从http请求中获取数据,而iam查询LocalDB如下所示:
exports.list = function(req, res) {
Article.find().sort('-created').populate('user', 'displayName').exec(function(err, articles) {
if (err) {
return res.status(400).send({
message: errorHandler.getErrorMessage(err)
});
} else {
res.json(articles);
}
});
};
我像下面的代码一样使用了Http请求,这引发了错误...我可以说该代码是疯狂的代码,但是请向我建议一些使Http富有成效的东西...感谢您对Advance的帮助!
var http = require('http');
exports.list = function(req, res) {
http.get('http://localhost:3030/articles').success(function(err, articles) {
if (err) {
return res.status(400).send({
message: errorHandler.getErrorMessage(err)
});
} else {
res.json(articles);
}
});
};
上述引发错误:
TypeError: Object #<ClientRequest> has no method 'success'
at exports.list (C:\Mean Workspace\prjts\marketplace-api-meanjs\app\controllers\articles.server.controller.js:76:49)
at Layer.handle [as handle_request] (C:\Mean Workspace\prjts\marketplace-api-meanjs\node_modules\express\lib\router\layer.js:82:5)
at next (C:\Mean Workspace\prjts\marketplace-api-meanjs\node_modules\express\lib\router\route.js:100:13)
最佳答案
很高兴我得到了一个答案....我们需要使用一个名为request ..的插件才能在Modules ... Good Plugin中进行请求。
请参考以下链接:
https://www.npmjs.com/package/request
https://www.npmjs.com/package/request-json
var request = require('request');
exports.list = function(req, res) {
request.get(
'http://localhost:3030/menus',
function (error, response, body) {
if (!error && response.statusCode === 200) {
//console.log(body);
var obj = JSON.parse(body); //changing format to exact Json Obj
res.json(obj);
}
}
);
};
现在,它正在将Json作为字符串抛出...使用request-json获取必需的Json ...哎呀,我第一次回答了自己的问题!
关于javascript - 在导出功能MEANJS中编写Http请求,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28931511/