initial commit
This commit is contained in:
78
server/server.js
Normal file
78
server/server.js
Normal file
@@ -0,0 +1,78 @@
|
||||
import express from "express";
|
||||
import { fileURLToPath } from 'url';
|
||||
import { dirname } from 'path';
|
||||
const app = express();
|
||||
const port = 8080;
|
||||
app.use(express.json());
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = dirname(__filename);
|
||||
let basedir = __dirname + "../../client";
|
||||
app.use("/", express.static(basedir + "/"));
|
||||
app.use("/bootstrap", express.static(basedir + "/node_modules/bootstrap/dist/"));
|
||||
let ranNum;
|
||||
app.get('/', (req, res) => {
|
||||
res.sendFile(__dirname + 'Aufgabenblatt 3/index.html');
|
||||
});
|
||||
app.listen(port, () => {
|
||||
console.log(`Server gestartet auf http://localhost:${port}/`);
|
||||
ranNum = random(1, 10);
|
||||
});
|
||||
app.get('/guess/:guess', (req, res) => {
|
||||
let guess = Number(req.params.guess);
|
||||
console.log(ranNum);
|
||||
if (Number.isNaN(guess)) {
|
||||
res.status(200).send({
|
||||
answer: 'Please enter a valid number!',
|
||||
win: false
|
||||
});
|
||||
}
|
||||
else if (guess > ranNum) {
|
||||
res.status(200).send({
|
||||
answer: 'Your guess was to high!',
|
||||
win: false
|
||||
});
|
||||
}
|
||||
else if (guess < ranNum) {
|
||||
res.status(200).send({
|
||||
answer: 'Your guess was to low!',
|
||||
win: false
|
||||
});
|
||||
}
|
||||
else {
|
||||
res.status(200).send({
|
||||
answer: 'Your guess was right!',
|
||||
win: true
|
||||
});
|
||||
}
|
||||
});
|
||||
app.post('/reset', (req, res) => {
|
||||
const min = Number(req.body.min);
|
||||
const max = Number(req.body.max);
|
||||
if (Number.isNaN(min || Number.isNaN(max) || min > max || min <= 0 || max <= 0)) {
|
||||
return res.status(400).send({
|
||||
message: 'Invalid input'
|
||||
});
|
||||
}
|
||||
ranNum = random(min, max);
|
||||
res.status(200).send({
|
||||
message: 'A new number has been set.'
|
||||
});
|
||||
});
|
||||
app.post('/cheat', (req, res) => {
|
||||
const password = "bruh";
|
||||
let cheat = req.body.password;
|
||||
if (password === cheat) {
|
||||
res.status(200).send({
|
||||
message: `Random number was: ${ranNum} Next time you'll get it`
|
||||
});
|
||||
}
|
||||
else {
|
||||
res.status(200).send({
|
||||
message: "Incorrect password"
|
||||
});
|
||||
}
|
||||
});
|
||||
function random(min, max) {
|
||||
return Math.floor(Math.random() * (max - min) + min);
|
||||
}
|
||||
//# sourceMappingURL=server.js.map
|
||||
1
server/server.js.map
Normal file
1
server/server.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"server.js","sourceRoot":"","sources":["server.ts"],"names":[],"mappings":"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"}
|
||||
83
server/server.ts
Normal file
83
server/server.ts
Normal file
@@ -0,0 +1,83 @@
|
||||
import express from "express";
|
||||
import { fileURLToPath } from 'url';
|
||||
import { dirname } from 'path';
|
||||
|
||||
const app = express();
|
||||
const port = 8080;
|
||||
|
||||
app.use(express.json());
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = dirname(__filename);
|
||||
|
||||
let basedir: string = __dirname + "../../client";
|
||||
app.use("/", express.static(basedir + "/"));
|
||||
app.use("/bootstrap", express.static(basedir + "/node_modules/bootstrap/dist/"));
|
||||
|
||||
let ranNum: number;
|
||||
|
||||
app.get('/', (req, res) => {
|
||||
res.sendFile(__dirname + 'Aufgabenblatt 3/index.html');
|
||||
});
|
||||
app.listen(port, () => {
|
||||
console.log(`Server gestartet auf http://localhost:${port}/`);
|
||||
ranNum = random(1, 10);
|
||||
});
|
||||
|
||||
app.get('/guess/:guess', (req, res) => {
|
||||
let guess: number = Number(req.params.guess);
|
||||
console.log(ranNum)
|
||||
|
||||
if(Number.isNaN(guess)) {
|
||||
res.status(200).send({
|
||||
answer: 'Please enter a valid number!',
|
||||
win: false
|
||||
})
|
||||
} else if (guess > ranNum) {
|
||||
res.status(200).send({
|
||||
answer: 'Your guess was to high!',
|
||||
win: false
|
||||
})
|
||||
} else if (guess < ranNum) {
|
||||
res.status(200).send({
|
||||
answer: 'Your guess was to low!',
|
||||
win: false
|
||||
})
|
||||
} else {
|
||||
res.status(200).send({
|
||||
answer: 'Your guess was right!',
|
||||
win: true
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
app.post('/reset', (req, res) => {
|
||||
const min: number = Number(req.body.min);
|
||||
const max: number = Number(req.body.max);
|
||||
if (Number.isNaN(min || Number.isNaN(max) || min > max || min <= 0 || max <= 0)) {
|
||||
return res.status(400).send({
|
||||
message: 'Invalid input'
|
||||
})
|
||||
}
|
||||
ranNum = random(min, max);
|
||||
res.status(200).send({
|
||||
message: 'A new number has been set.'
|
||||
})
|
||||
})
|
||||
app.post('/cheat', (req, res) => {
|
||||
const password: string = "bruh";
|
||||
let cheat = req.body.password;
|
||||
|
||||
if (password === cheat) {
|
||||
res.status(200).send({
|
||||
message: `Random number was: ${ranNum} Next time you'll get it`
|
||||
})
|
||||
} else {
|
||||
res.status(200).send({
|
||||
message: "Incorrect password"
|
||||
})
|
||||
}
|
||||
})
|
||||
function random(min: number, max: number): number {
|
||||
return Math.floor(Math.random() * (max - min) + min);
|
||||
}
|
||||
Reference in New Issue
Block a user