Page 102 - Node.js开发指南
P. 102

5.3  路由控制    95


                                           表5-2  REST风格HTTP 请求的特点
                                                                                                      1
                          请求方式                        安  全                       幂  等
                           GET                          是                           是
                           POST                         否                           否
                           PUT                          否                           是                 2
                           DELETE                       否                           是

                   Express  对每种 HTTP  请求方法都设计了不同的路由绑定函数,例如前面例子全部是
               app.get,表示为该路径绑定了 GET 请求,向这个路径发起其他方式的请求不会被响应。
               表 5-3 是 Express 支持的所有 HTTP 请求的绑定函数。                                                    3

                                        表5-3  Express 支持的 HTTP 请求的绑定函数
                          请求方式                                     绑定函数
                                                                                                      4
                         GET                                app.get(path, callback)
                         POST                               app.post(path, callback)
                         PUT                                app.put(path, callback)
                         DELETE                             app.delete(path, callback)
                                                                                                      5
                         PATCH                              app.patch(path, callback)
                               ①
                         TRACE                              app.trace(path, callback)
                         CONNECT                            app.connect(path, callback)
                         OPTIONS                            app.options(path, callback)               6
                         所有方法                               app.all(path, callback)

                   例如我们要绑定某个路径的 POST 请求,则可以用 app.post(path, callback) 的
               方法。需要注意的是 app.all 函数,它支持把所有的请求方式绑定到同一个响应函数,是                                           7
               一个非常灵活的函数,在后面我们可以看到许多功能都可以通过它来实现。

               5.3.5  控制权转移

                                                                                                      8
                   Express 支持同一路径绑定多个路由响应函数,例如:

                   app.all('/user/:username', function(req, res) {
                     res.send('all methods captured');
                   });
                   app.get('/user/:username', function(req, res) {                                    9
                     res.send('user: ' + req.params.username);
                   });
               ——————————
                  ① PATCH 方式是 IETF RFC 5789 ( http://tools.ietf.org/html/rfc5789 ) 新增的 HTTP 方法,功能定义是部分更新某个  10
                     资源。
   97   98   99   100   101   102   103   104   105   106   107