【发布时间】:2014-05-13 07:23:28
【问题描述】:
这是我第一次在 node (Express) js 中编写,我正在尝试连接我的数据库 (Mysql)。在这里我找到了我的 app.js 文件的代码。
app.js
var express = require('express'),
mysql = require('mysql');
// Application initialization
var bodyParser = require('body-parser');
var connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : ''
});
var app = module.exports = express.createServer();
// Database setup
connection.query('CREATE DATABASE IF NOT EXISTS test', function (err) {
if (err) throw err;
connection.query('USE test', function (err) {
if (err) throw err;
connection.query('CREATE TABLE IF NOT EXISTS users('
+ 'id INT NOT NULL AUTO_INCREMENT,'
+ 'PRIMARY KEY(id),'
+ 'name VARCHAR(30)'
+ ')', function (err) {
if (err) throw err;
});
});
});
// Configuration
app.use(express.bodyParser());
// Main route sends our HTML file
app.get('/', function(req, res) {
res.sendfile(__dirname + '/index.html');
});
// Update MySQL database
app.post('/users', function (req, res) {
connection.query('INSERT INTO users SET ?', req.body,
function (err, result) {
if (err) throw err;
res.send('User added to database with ID: ' + result.insertId);
}
);
});
// Begin listening
app.listen(3000);
console.log("Express server listening on port %d in %s mode", app.address().port, app.settings.env);
但是当我在 CMD 中运行这个 app.js 文件时>node app.js
我收到此错误。
c:\express\testproject>node app.js
c:\express\testproject\app.js:13
var app = module.exports = express.createServer();
^
TypeError: Object function createApplication() {
var app = function(req, res, next) {
app.handle(req, res, next);
};
mixin(app, proto);
mixin(app, EventEmitter.prototype);
app.request = { __proto__: req, app: app };
app.response = { __proto__: res, app: app };
app.init();
return app;
} has no method 'createServer'
at Object.<anonymous> (c:\express\testproject\app
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:1
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:902:3
我无法弄清楚到底是什么问题。
【问题讨论】:
标签: javascript mysql node.js express