Expressコマンドを実行して、expressアプリケーションを作成しましょう
このページでは、expressコマンドを用いて、expressアプリケーションを作成する方法について説明します。
なお、nodeとnpmはすでにインストール済みであることが条件です。 私の環境では、以下のバージョンとなります。 * npm 3.10.3 * node v6.3.0
express myexapp
でexpressアプリケーションが作成可能です。
npm install expressしてもexpress: command not foundとなる場合は、
以下のコマンドを実行してください。
npm install -g express-generator
詳細は以下のサイトに書いてあります。ありがとうございます。 http://qiita.com/armorik83/items/d8c74a78759f7af18dba
これで、myexappというフォルダの中に、app.jsファイルとその他のファイルが作成されました。
myexappのフォルダ内で、 node app.js
を実行して、サーバーを実行しようとしますが、
これだけでは、サーバーは起動しません。
app.js
にサーバー待ち受け処理が記述されていないためです。
以下をapp.jsの最後に追加してください。
これで、node app.js
で実行してサーバーの処理がスタートします。
app.listen(1234);
console.log('Server running at http://127.0.0.1:1234/');
[app.js]
var express = require('express'); var path = require('path'); var favicon = require('serve-favicon'); var logger = require('morgan'); var cookieParser = require('cookie-parser'); var bodyParser = require('body-parser'); var routes = require('./routes/index'); var users = require('./routes/users'); var app = express(); // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade'); // uncomment after placing your favicon in /public //app.use(favicon(path.join(__dirname, 'public', 'favicon.ico'))); app.use(logger('dev')); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); app.use(cookieParser()); app.use(express.static(path.join(__dirname, 'public'))); app.use('/', routes); app.use('/users', users); // catch 404 and forward to error handler app.use(function(req, res, next) { var err = new Error('Not Found'); err.status = 404; next(err); }); // error handlers // development error handler // will print stacktrace if (app.get('env') === 'development') { app.use(function(err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: err }); }); } // production error handler // no stacktraces leaked to user app.use(function(err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: {} }); }); module.exports = app; app.listen(1234); console.log('Server running at http://127.0.0.1:1234/');
[./views/index.jade]
doctype html html head title= title link(rel='stylesheet', href='/stylesheets/style.css') body block content
[./views/index.jade]
doctype html html head title= title link(rel='stylesheet', href='/stylesheets/style.css') body block content
[./views/error.jade]
extends layout block content h1= message h2= error.status pre #{error.stack}
[./routes/index.js]
var express = require('express'); var router = express.Router(); /* GET home page. */ router.get('/', function(req, res, next) { res.render('index', { title: 'Express' }); }); module.exports = router;
[./routes/users.js]
var express = require('express'); var router = express.Router(); /* GET users listing. */ router.get('/', function(req, res, next) { res.send('respond with a resource'); }); module.exports = router;