使用connect模块时报错:"Type Error:undefinde is not a function" ,求大神指点!!!!!
发布于 10 年前 作者 zuokanmingyuli 7149 次浏览 最后一次编辑是 8 年前 来自 问答

报错如下: undefinde is not a function.jpg untitled1.png 所运行的程序如下: var common = require(’./common.js’) var connect = require(‘connect’) var knox = common.knox var util = common.util var uuid = common.uuid

var bs = 48

var server = connect.createServer( connect.router(function(app){ app.post(‘upload’,function(req,res) { util.debug(‘upload start’) var bytes = 0

  var picid = uuid()
  req.on('end', function() {
    util.debug('bytes:'+bytes)
    util.debug('upload end')
    res.writeHead(200, "OK", {'Content-Type': 'application/json'});
    res.end( JSON.stringify({ok:true,picid:picid}) )
  });
  
})

}), connect.static(’…/public’) ) server.listen(3009)

我查了一下,大概是说connect里没有router这个函数,是connect没有定义好,但第一个connect.createServer却又是可以用的,然后里面的这个connect却调用不了它的函数。究竟是哪里错了呢?感谢!!!

6 回复

图多发了一遍不好意思

@ruanyl 感谢!我看了这个连接好久,还是不太明白,我发现我只要一调用connect的函数,比如connect.createServer()或connect.router(),就会报错,比如下面代码就会在connect.createServer()的位置报错,报错跟上面图片一样 var common = require(’./common.js’) connect.createServer() .use(connect.favicon()) .use(connect.logger()) .use(connect.static(__dirname + ‘/public’)) .listen(3000); 就好像connect里没有createServer函数一样,为啥呀?求大侠指点!

@ruanyl 有这一句的:var connect = require(“connect”) ;

我查了下,你的这些方法随着connect的更新都逐渐移除了,你可以看看他们的changelog:https://github.com/senchalabs/connect/blob/a5ba676e9599e145af56ad95f0f4a7dd3832dc90/History.md

@ruanyl 感谢!我照着你给的链接里的例程修改了,替换掉了createServer,改用connectRoute,不报错可以用了,非常感谢!

回到顶部