File app.js changed (mode: 100644) (index dbd1e23..f1a2753) |
|
1 |
|
let debug = require('debug')('node.js-mysql-api:server'); |
|
2 |
|
let http = require('http'); |
1 |
3 |
let createError = require('http-errors'); |
let createError = require('http-errors'); |
2 |
4 |
let express = require('express'); |
let express = require('express'); |
3 |
5 |
let path = require('path'); |
let path = require('path'); |
|
... |
... |
const NewsRouter = require("./routes/news"); |
9 |
11 |
|
|
10 |
12 |
let app = express(); |
let app = express(); |
11 |
13 |
|
|
|
14 |
|
// port and server setup |
|
15 |
|
let port = normalizePort(process.env.PORT || '8000'); |
|
16 |
|
app.set('port', port); |
|
17 |
|
|
|
18 |
|
let server = http.createServer(app); |
|
19 |
|
server.listen(port); |
|
20 |
|
server.on('error', (err) => { |
|
21 |
|
if (error.syscall !== 'listen') { |
|
22 |
|
throw err; |
|
23 |
|
} |
|
24 |
|
|
|
25 |
|
let bind = (typeof port === 'string') ? ('Pipe ' + port) : ('Port ' + port); |
|
26 |
|
|
|
27 |
|
// handle specific listen errors with friendly messages |
|
28 |
|
switch (err.code) { |
|
29 |
|
case 'EACCES': |
|
30 |
|
console.error(bind + ' requires elevated privileges'); |
|
31 |
|
process.exit(1); |
|
32 |
|
break; |
|
33 |
|
case 'EADDRINUSE': |
|
34 |
|
console.error(bind + ' is already in use'); |
|
35 |
|
process.exit(1); |
|
36 |
|
break; |
|
37 |
|
default: |
|
38 |
|
throw err; |
|
39 |
|
} |
|
40 |
|
}); |
|
41 |
|
server.on('listening', () => { |
|
42 |
|
let addr = server.address(); |
|
43 |
|
let bind = (typeof addr === 'string') ? ('pipe ' + addr) : ('port ' + addr.port); |
|
44 |
|
debug('Listening on ' + bind); |
|
45 |
|
}); |
|
46 |
|
|
|
47 |
|
function normalizePort(val) { |
|
48 |
|
let port = parseInt(val, 10); |
|
49 |
|
|
|
50 |
|
if (isNaN(port)) { |
|
51 |
|
// named pipe |
|
52 |
|
return val; |
|
53 |
|
} |
|
54 |
|
|
|
55 |
|
if (port >= 0) { |
|
56 |
|
// port number |
|
57 |
|
return port; |
|
58 |
|
} |
|
59 |
|
return false; |
|
60 |
|
} |
|
61 |
|
|
12 |
62 |
// view engine setup |
// view engine setup |
13 |
63 |
app.set('views', path.join(__dirname, 'views')); |
app.set('views', path.join(__dirname, 'views')); |
14 |
64 |
app.engine("html", require("ejs").renderFile); |
app.engine("html", require("ejs").renderFile); |
File bin/www deleted (index 6712716..0000000) |
1 |
|
#!/usr/bin/env node |
|
2 |
|
|
|
3 |
|
/** |
|
4 |
|
* Module dependencies. |
|
5 |
|
*/ |
|
6 |
|
|
|
7 |
|
var app = require('../app'); |
|
8 |
|
var debug = require('debug')('node.js-mysql-api:server'); |
|
9 |
|
var http = require('http'); |
|
10 |
|
|
|
11 |
|
/** |
|
12 |
|
* Get port from environment and store in Express. |
|
13 |
|
*/ |
|
14 |
|
|
|
15 |
|
var port = normalizePort(process.env.PORT || '8000'); |
|
16 |
|
app.set('port', port); |
|
17 |
|
|
|
18 |
|
/** |
|
19 |
|
* Create HTTP server. |
|
20 |
|
*/ |
|
21 |
|
|
|
22 |
|
var server = http.createServer(app); |
|
23 |
|
|
|
24 |
|
/** |
|
25 |
|
* Listen on provided port, on all network interfaces. |
|
26 |
|
*/ |
|
27 |
|
|
|
28 |
|
server.listen(port); |
|
29 |
|
server.on('error', onError); |
|
30 |
|
server.on('listening', onListening); |
|
31 |
|
|
|
32 |
|
/** |
|
33 |
|
* Normalize a port into a number, string, or false. |
|
34 |
|
*/ |
|
35 |
|
|
|
36 |
|
function normalizePort(val) { |
|
37 |
|
var port = parseInt(val, 10); |
|
38 |
|
|
|
39 |
|
if (isNaN(port)) { |
|
40 |
|
// named pipe |
|
41 |
|
return val; |
|
42 |
|
} |
|
43 |
|
|
|
44 |
|
if (port >= 0) { |
|
45 |
|
// port number |
|
46 |
|
return port; |
|
47 |
|
} |
|
48 |
|
|
|
49 |
|
return false; |
|
50 |
|
} |
|
51 |
|
|
|
52 |
|
/** |
|
53 |
|
* Event listener for HTTP server "error" event. |
|
54 |
|
*/ |
|
55 |
|
|
|
56 |
|
function onError(error) { |
|
57 |
|
if (error.syscall !== 'listen') { |
|
58 |
|
throw error; |
|
59 |
|
} |
|
60 |
|
|
|
61 |
|
var bind = typeof port === 'string' |
|
62 |
|
? 'Pipe ' + port |
|
63 |
|
: 'Port ' + port; |
|
64 |
|
|
|
65 |
|
// handle specific listen errors with friendly messages |
|
66 |
|
switch (error.code) { |
|
67 |
|
case 'EACCES': |
|
68 |
|
console.error(bind + ' requires elevated privileges'); |
|
69 |
|
process.exit(1); |
|
70 |
|
break; |
|
71 |
|
case 'EADDRINUSE': |
|
72 |
|
console.error(bind + ' is already in use'); |
|
73 |
|
process.exit(1); |
|
74 |
|
break; |
|
75 |
|
default: |
|
76 |
|
throw error; |
|
77 |
|
} |
|
78 |
|
} |
|
79 |
|
|
|
80 |
|
/** |
|
81 |
|
* Event listener for HTTP server "listening" event. |
|
82 |
|
*/ |
|
83 |
|
|
|
84 |
|
function onListening() { |
|
85 |
|
var addr = server.address(); |
|
86 |
|
var bind = typeof addr === 'string' |
|
87 |
|
? 'pipe ' + addr |
|
88 |
|
: 'port ' + addr.port; |
|
89 |
|
debug('Listening on ' + bind); |
|
90 |
|
} |
|