Page 200 - AngularJS权威教程
P. 200

180  第 18 章  服务器通信


                 在Node应用的app.js中,需要注册两个新的路由,并且创建定义路由的功能。
                 这两个新的Node路由与我们在上面调用的服务路由相匹配:

                 // ...
                 var hits = require('./routes/hits');
                 // ...
                 app.get('/hits', hits.count);
                 app.post('/hit', hits.registerNew);
                 // ...

                 唯一剩下来的组件就是创建真正的后端,记录点击数的服务端逻辑。
                 在NodeJS中,每个请求的模块通过exports方法来暴露方法。要暴露上面提到的两个方法
             count和registerNew,需要把它们附加到routes/hits.js文件中的exports对象上。

                 在routes/hits.js文件中,我们在内存中创建一个点击仓库来存储点击数,这样,如果重启服务
             器的话,点击数也会被重置。

                  /*
                  * HIT service
                  */
                  var hits = 0;
                  exports.count = function(req, res){
                      res.send(200, {
                          hits: hits
                      });
                  }
                 exports.registerNew = function(req, res) {
                     hits += 1;
                     res.send(200, {
                         hits: hits
                     });
                 }
                 现在,如果启动我们的Node应用,把路由指向http://localhost:3000,就会看到已经给自己的
             Angular应用添加了预期的功能,如图18-3所示。




















                                                图18-3  首次启动

                 按钮被点击之后如图18-4所示。
   195   196   197   198   199   200   201   202   203   204   205