search

Home  >  Q&A  >  body text

javascript - 请问nodejs 中 express.use 作用是干嘛?

nodejs的中间件 connect 是不是可以理解为插件?
他的作用就是扩展了一下req和res吗

express.use是如何使用
还有

express.get 和 set 的最主要应用在哪里?

我就知道express.get('',function(req,res){..})可以做路由,但我不知道配合set可以干嘛

本人刚接触nodejs,express这个库还没用过。。

阿神阿神2896 days ago725

reply all(3)I'll reply

  • 天蓬老师

    天蓬老师2017-04-10 13:12:55

    connect 和 express 都是 node 中扩展了 http/https 包(也就是 req 和 res)的包。

    .use 方法是 connect 和 express 引入它们的插件的方法。

    .get .set 可以往 express 实例上存数据,可以是对 express 的配置数据,也可以是其它数据。这时候他们的形式分别是:

    Express#set(key, value)
    Express#get(key)
    

    .get 还有另外一个用法,就是和 .post .put .del .patch 一样,做路由,分别对应 HTTP 协议的 GET POST PUT DELETE PATCH 方法。它们和 .use 的区别,你可以把他们理解成最后一个 .use

    Express#use([path, ]hook1[, hook2][, hook3, ...])
    Express#get(path, [hook1, ][hook2, ..., ]handler)
    Express#post(path, [hook1, ][hook2, ..., ]handler)
    Express#put(path, [hook1, ][hook2, ..., ]handler)
    Express#del(path, [hook1, ][hook2, ..., ]handler)
    Express#patch(path, [hook1, ][hook2, ..., ]handler)
    

    详情可以看我之前写的一篇博客:http://blog.segmentfault.com/xingrz/1190000000355812

    reply
    0
  • 高洛峰

    高洛峰2017-04-10 13:12:55

    LZ先学HTTP协议在用express吧。get和set方法不是java中的set和get,get是路由,set是设置application的属性!

    reply
    0
  • 迷茫

    迷茫2017-04-10 13:12:55

    app.use方法实际上是将中间件保存在一个数组中,注册路由时,依次将数组的元素取出

    reply
    0
  • Cancelreply