Create tasks 3 and 4
This commit is contained in:
parent
e75a788578
commit
82a6611297
1 changed files with 99 additions and 2 deletions
101
myApp.js
101
myApp.js
|
@ -1,7 +1,10 @@
|
||||||
let express = require('express');
|
let express = require('express');
|
||||||
|
require('dotenv').config();
|
||||||
let app = express();
|
let app = express();
|
||||||
|
|
||||||
class TestApp1 {
|
const TestApps = {};
|
||||||
|
|
||||||
|
TestApps[1] = class TestApp {
|
||||||
message = "Hello Express";
|
message = "Hello Express";
|
||||||
default_path = "/";
|
default_path = "/";
|
||||||
|
|
||||||
|
@ -20,6 +23,100 @@ class TestApp1 {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
new TestApp1();
|
TestApps[2] = class TestApp {
|
||||||
|
paths = {
|
||||||
|
"assets": "/public",
|
||||||
|
"receive": "/",
|
||||||
|
"send": "/views/index.html"
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Create a default response. */
|
||||||
|
respond(HANDLER) {
|
||||||
|
HANDLER.sendFile(__dirname + this.paths['send']);
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Handle requests and send default responses. */
|
||||||
|
handle() {
|
||||||
|
app.use(this.paths['assets'], express.static(__dirname + this.paths['assets']));
|
||||||
|
app.get(this.paths["receive"], (REQUEST, RESPONSE) => {this.respond(RESPONSE);})
|
||||||
|
};
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
this.handle();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
TestApps[3] = class TestApp3 {
|
||||||
|
paths = {
|
||||||
|
"assets": "/public",
|
||||||
|
"receive": "/",
|
||||||
|
"send": "/views/index.html",
|
||||||
|
"API": "/json"
|
||||||
|
};
|
||||||
|
defaults = {
|
||||||
|
"response": {"message": "Hello json"}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Create a default JSON response. */
|
||||||
|
respond(HANDLER) {
|
||||||
|
HANDLER.json(this.defaults[`response`]);
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Create a default HTML response. */
|
||||||
|
create(HANDLER) {
|
||||||
|
HANDLER.json(this.defaults[`response`]);
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Handle requests and send default responses. */
|
||||||
|
handle() {
|
||||||
|
app.use(this.paths['assets'], express.static(__dirname + this.paths['assets']));
|
||||||
|
app.get(this.paths["receive"], (REQUEST, RESPONSE) => {this.create(RESPONSE);})
|
||||||
|
app.get(this.paths["API"], (REQUEST, RESPONSE) => {this.respond(RESPONSE);})
|
||||||
|
};
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
this.handle();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
TestApps[4] = class TestApp {
|
||||||
|
#paths = {
|
||||||
|
"API": {
|
||||||
|
"now": "/now"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Handle API responses.
|
||||||
|
*/
|
||||||
|
handle() {
|
||||||
|
app.get(this.#paths[`API`][`now`], (REQUEST, RESPONSE, next) => {REQUEST.time = new Date(); next()}, (REQUEST, RESPONSE) => {RESPONSE.send(this.response(REQUEST, RESPONSE));});
|
||||||
|
app.post(this.#paths[`API`][`now`], (REQUEST, RESPONSE, next) => {REQUEST.time = new Date(); next()}, (REQUEST, RESPONSE) => {RESPONSE.send(this.response(REQUEST, RESPONSE));});
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Create the default response. */
|
||||||
|
response(REQUEST, RESPONSE) {
|
||||||
|
let DEFAULT = {'time': REQUEST.time.toString()};
|
||||||
|
return DEFAULT;
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
this.handle();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
class TestApp {
|
||||||
|
test() {
|
||||||
|
new TestApps[4]();
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
console.log(process.env);
|
||||||
|
this.test();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
new TestApp();
|
||||||
|
|
||||||
module.exports = app;
|
module.exports = app;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue