angularjs前端和nodejs后端之间的AJAX数据传输

时间:2014-06-25 20:47:51

标签: javascript ajax node.js angularjs asynccallback

仅供参考:如果你觉得我的帖子太长,那么底部有一个主要问题;)

我正在尝试构建我的第一个angularjs应用程序,现在我坚持通过来自nodejs(express)服务器的ajax收集数据。

在前端Im加载带有angularjs路由器和ng-view的模板。在每个路线我都有模板和特定的控制器(这应该是非常基本的东西吗?)。

好了,这就是墙...我正在考虑将$ http.get()从控制器中的nodejs服务器加载到模板的正确内容。使用GET,我可以发送这样的变量。

$http.get('http://.../API', { params: { twitterData : true,  needed : "data2" } } )
    .success( function(result) {
        // pass result to template.
    });

然后在服务器端获取这样的参数。

router.get('/', function(req, res) {
    this.params = req.query;

    // here run every function and collect it to one object
    // then return it for front-end ajax call.

   res.send(JSON.stringify(collectedDataObj));
}

collectDataObj看起来像这样:

{ twitterData : 
    { thisIs:twitterObject }, 
    blog : {title: "...", content: "..." } 
}

收集数据将采用嵌套回调,例如http://book.mixu.net/node/ch7.html

这是"收集后端的所有数据"获取数据的最佳方式,还是应该发送许多ajax调用来收集一个角度视图的数据?

一个$ http.get()用于获取titter对象,一个用于博客内容等。

当然,如果你知道一些关于好的tutos /例子的链接。

1 个答案:

答案 0 :(得分:0)

IMO,只要有可能,最好在一次请求中获得所有内容。来回服务器的旅行相当昂贵。