Node JS Routing
Node JS Routing
Node JS
Express Routing
var express = require('express');
var app = express();
var express =
require('express'); varapp =
express();
app.use('/public', express.static('files'));
app.use('/public', express.static('files'));
app.listen(3000, () => {
console.log('Listening on port 3000');
});
var express =
require('express'); varapp =
express();
app.use('/public', express.static('files'));
var express =
require('express'); varapp =
express();
app.use('/public', express.static('files'));
var express =
require('express'); varapp =
express();
app.use('/public', express.static('files'));
var express =
require('express'); varapp =
express();
app.use('/public', express.static('files'));
<html>
<body>
<h1>Hello!</h1>
<img src="images/kitty.jpg">
<!-- File is files/images/kitty.jpg -->
</body>
</html>
<html>
<body>
<h1>Hello!</h1>
<img src="images/kitty.jpg">
<!-- File is files/images/kitty.jpg -->
</body>
</html>
<html>
<body>
<h1>Hello!</h1>
<img src="images/kitty.jpg">
<!-- File is files/images/kitty.jpg -->
</body>
</html>
<html>
<body>
<h1>Hello!</h1>
<img src="images/kitty.jpg">
<!-- File is files/images/kitty.jpg -->
</body>
</html>
<html>
<body>
<h1>Hello!</h1>
<img src="images/kitty.jpg">
<!-- File is files/images/kitty.jpg -->
</body>
</html>
<html>
<body>
<h1>Hello!</h1>
<img src="images/kitty.jpg">
<!-- File is files/images/kitty.jpg -->
</body>
</html>
<html>
<body>
<h1>Hello!</h1>
<img src="images/kitty.jpg">
<!-- File is files/images/kitty.jpg -->
</body>
</html>
var express =
require('express'); varapp =
express();
app.use('/public', express.static('files'));
var express =
require('express'); varapp =
express();
app.use('/public',
express.static('files'));
var express =
require('express'); varapp =
express();
app.use('/public', express.static('files'));
var express =
require('express'); varapp =
express();
app.use('/public', express.static('files'));
var express =
require('express'); varapp =
express();
app.use('/public', express.static('files'));
var express =
require('express'); varapp =
express();
app.use('/public', express.static('files'));
var express =
require('express'); varapp =
express();
app.use('/public', express.static('files'));
app.use(logger);
app.use('/public', express.static('files'));
app.use(logger);
app.use('/public', express.static('files'));
app.use(logger);
app.use('/public', express.static('files'));
app.use(logger);
app.use('/public', express.static('files'));
app.use(logger);
app.use('/public', express.static('files'));
app.use(logger);
app.use('/public', express.static('files'));
app.use(logger);
app.use('/public', express.static('files'));
app.use(logger);
app.use('/public', express.static('files'));
app.use(logger);
app.use('/public',
express.static('files'));
// app.use(logger);
// app.use(logger);
// app.use(logger);
// app.use(logger);
// app.use(logger);
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome',
nameFinder, greeter,
(req
app.use('/admin', adminName,
, greeter,
(req,
res res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); } )
(req,
; res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); }
(req,
); res) => { res.end(); } );
SD4x-4.3 127
var nameFinder = (req, res, next) => {
var name = req.query.name;
if (name) req.username = name.toUpperCase();
else req.username = 'Guest';
next();
}
app.use('/welcome', nameFinder,
greeter,
(req, res) =>
app.use('/admin', adminName, greeter,
{ res.end(); } )
(req,
; res) => { res.end(); } );
SD4x-4.3 127
Middleware, Routes, and Routers
• We may find that the same combinations of
middleware functions are being used in
multiple routes
SD4x-4.3 155
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 156
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 157
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 158
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 159
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 160
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 161
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 162
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 163
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 164
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 165
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 166
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 167
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 168
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 169
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 170
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 171
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 172
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 173
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 174
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 175
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 176
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 177
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 178
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 179
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 180
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 181
var nameFinder = (req, res, next) => { . . . }
SD4x-4.3 182
var nameFinder = (req, res, next) => { . . . }