我正在尝试关注 this教程,关于在 NodeJS 中托管 Cocos2d,但我收到此错误消息:
Object #<Server> has no method 'use'
at Object.<anonymous>
在这一行中:
server.use('/Art', express.static(__dirname + '/Art') );
这是我的代码:
var express = require('express'),
http = require('http');
var app = express();
app.use(express.bodyParser());
var server = http.createServer(app);
server.use('/Art', express.static(__dirname + '/Art') );
server.use('/Platform', express.static(__dirname + '/Platform') );
server.use('/Sounds', express.static(__dirname + '/Sounds') );
server.use('/Src', express.static(__dirname + '/Src') );
server.get('/', function(req,res){
res.sendfile('index.html');
console.log('Sent index.html');
});
server.get('/api/hello', function(req,res){
res.send('Hello Cruel World');
});
server.listen(process.env.PORT || 3000);
最佳答案
错误消息告诉你发生了什么:变量server
引用的是Node的Web服务器对象,而不是express应用程序。因此您的代码应更正为:
app.use('/Art', express.static(__dirname + '/Art') );
app.use('/Platform', express.static(__dirname + '/Platform') );
app.use('/Sounds', express.static(__dirname + '/Sounds') );
app.use('/Src', express.static(__dirname + '/Src') );
app.get('/', function(req,res){
res.sendfile('index.html');
console.log('Sent index.html');
});
app.get('/api/hello', function(req,res){
res.send('Hello Cruel World');
});
http.createServer(app).listen(process.env.PORT || 3000);
关于javascript - 对象没有方法使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23024884/