Repository navigation
Expand file tree
/
Copy pathexample01.js
More file actions
77 lines (69 loc) · 2.11 KB
/
Copy pathexample01.js
File metadata and controls
77 lines (69 loc) · 2.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
/**
* Description: Create https server and show lifecycle-events.
* You need write in your browser: https://localhost:443/
*/
/** Import generics dependences */
import https from 'https';
import fs from 'fs';
import path from 'path';
import 'pretty-console-colors';
/** Define configuration */
const config = {
port: 443,
};
const __dirname = path.resolve();
// Create server instance.
const server = https.createServer({
key: fs.readFileSync(`${__dirname}/src/http2/localhost-privkey.pem`),
cert: fs.readFileSync(`${__dirname}/src/http2/localhost-cert.pem`),
});
// Set listen function and set config.
server.listen(config, () => {
console.log(`🚀 Server | Running on: ${config.host} and port: ${config.port}`);
});
// [1] Server Event for show listening server.
server.on('listening', () => {
console.log('👂 Server | Listening\n');
});
// [2] Server Event for show connection http.
server.on('connection', () => {
console.log('🔗 Server | Connection ⤵️');
console.log('---------- | -------------');
});
// [-] Server Event if server has an error.
server.on('close', () => {
console.log('🚪 Server | Close');
});
// [-] Server Event if server has an error.
server.on('error', (err) => {
console.log('❌ Server | Error', err);
});
// [3] Server Event when received and request http.
server.on('request', (request, response) => {
console.log('👉 Server | Request ⤵️');
request.on('resume', () => {
console.log('👀 Request | Resume ⤵️');
});
request.on('data', () => {
console.log('👀 Request | Data ⤵️');
});
request.on('end', () => {
console.log('👀 Request | End ⤵️');
// Set statusCode and data for end response.
response.end(null, 'utf8', () => {
console.log('👀 Response | End ⤵️');
});
});
request.on('close', () => {
console.log('🚪 Request | Close ⤵️');
});
request.on('error', () => {
console.log('❌ Request | Error');
});
response.on('close', () => {
console.log('🚪 Response | Close 🏁');
});
response.on('finish', () => {
console.log('👈 Response | Finish ⤵️');
});
});