使用Node和Angular从Last.fm API获取search结果

我正在尝试使用node-lastfmapi track.search方法。 我能够得到结果,但我不确定如何使用Angular在前端显示它们。 我为数据库使用mongoDB,并为用户想要select并希望保存的特定search结果创build了一个模式。 但在此之前,用户需要查看search结果。 那么怎样才能显示Express.js从第三方API查询这些结果呢?

这是迄今为止我写的代码

app.post('/api/shows', function(req, res, next) { var trackName = req.body.trackName; //search bar which gets trackName user enters lfm.track.search({ 'track' : trackName }, function (err, track) { if(!track.album.title) { return res.send(404, { message: req.body.trackName + ' was not found.' }); } }); 

我创build简单的代码片段在lastfmapi中search,并将结果作为JSON在Express中发送。

 var LastfmAPI = require('lastfmapi'); var express = require('express'); var app = express(); var port = process.env.PORT || 8080; var bodyParser = require('body-parser') var lfm = new LastfmAPI({ //you keys here }); app.use(bodyParser.urlencoded({ extended: false })); app.post('/api/shows', function(req, res, next) { var trackName = req.body.trackName; console.log('get req'); lfm.track.search({ 'track' : trackName }, function (err, track) { res.json(track); }); }); console.log('Start listen! on port: ' + port); app.listen(port); 

如果你想在MongoDb中保存来自lfm api响应的一些结果,创build你自己的mongoose模型,并在我的代码片段中使用它们。

我也知道你为什么在你的问题中joinAngularJs。 反正你不能使用$资源https://docs.angularjs.org/api/ngResource/service/$resource从你的前端应用程序中的resful api获取数据。