Skip to content

Commit b85a3a8

Browse files
authored
Slightly improved readability and made some other changes (#8)
1 parent 822db23 commit b85a3a8

File tree

2 files changed

+16
-13
lines changed

2 files changed

+16
-13
lines changed

native-advanced/server.js

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,23 @@
22

33
const http = require('node:http');
44

5+
const PORT = 8000;
56
const user = { name: 'jura', age: 22 };
67

78
const routing = {
89
'/': 'welcome to homepage',
910
'/user': user,
1011
'/user/name': () => user.name,
1112
'/user/age': () => user.age,
12-
'/user/*': (client, par) => 'parameter=' + par[0],
13+
'/user/*': (client, params) => 'parameter=' + params[0],
1314
};
1415

1516
const types = {
1617
object: JSON.stringify,
1718
string: (s) => s,
1819
number: (n) => n + '',
1920
undefined: () => 'not found',
20-
function: (fn, par, client) => fn(client, par),
21+
function: (fn, params, client) => fn(client, params),
2122
};
2223

2324
const matching = [];
@@ -31,24 +32,26 @@ for (const key in routing) {
3132
}
3233

3334
const router = (client) => {
34-
let par;
35-
let route = routing[client.req.url];
35+
const { req: { url } } = client;
36+
let route = routing[url];
37+
const params = [];
3638
if (!route) {
37-
for (let i = 0; i < matching.length; i++) {
38-
const rx = matching[i];
39-
par = client.req.url.match(rx[0]);
40-
if (par) {
41-
par.shift();
39+
for (const rx of matching) {
40+
params = url.match(rx[0]);
41+
if (params) {
42+
params.shift();
4243
route = rx[1];
4344
break;
4445
}
4546
}
4647
}
4748
const type = typeof route;
4849
const renderer = types[type];
49-
return renderer(route, par, client);
50+
return renderer(route, params, client);
5051
};
5152

5253
http.createServer((req, res) => {
53-
res.end(router({ req, res }) + '');
54-
}).listen(8000);
54+
res.end(`${router({ req, res })}`);
55+
}).listen(PORT);
56+
57+
console.log(`Running server on port ${PORT}`)

native-async/server.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ const serve = (data, req, res) => {
3434
const type = typeof data;
3535
if (type === 'string') return res.end(data);
3636
const serializer = types[type];
37-
serializer([data, req, res], (data) => serve(data, req, res));
37+
serializer([data, req, res], (ser) => serve(ser, req, res));
3838
};
3939

4040
http.createServer((req, res) => {

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy