Prvotní nástřel pizza parseru

This commit is contained in:
Martin Berka
2023-04-15 08:05:46 +02:00
parent 81f48ebbe2
commit bf379e13ed
13 changed files with 10876 additions and 29175 deletions

66
server/src/index.ts Normal file
View File

@@ -0,0 +1,66 @@
import express from "express";
import { Server } from "socket.io";
import bodyParser from "body-parser";
import { fetchPizzy } from "./chefie";
const app = express();
const server = require("http").createServer(app);
const io = new Server(server, {
cors: {
origin: "*",
},
});
// Body-parser middleware for parsing JSON
app.use(bodyParser.json());
const cors = require('cors');
app.use(cors({
origin: '*'
}));
app.get("/api/pizza", (req, res) => {
fetchPizzy().then(pizzaList => {
console.log("Výsledek", pizzaList);
res.status(200).json(pizzaList);
});
});
app.post("/api/zprava", (req, res) => {
const { username, message } = req.body;
if (
typeof username !== "string" ||
typeof message !== "string" ||
username.length > 500 ||
message.length > 500
) {
return res.status(400).json({ error: "Invalid input" });
}
console.log(`posílám ${username} ${message} `);
io.emit("externalMessage", `${username} -> ${message}`);
res.status(200).json({ success: "Message sent" });
});
io.on("connection", (socket) => {
console.log(`New client connected: ${socket.id}`);
socket.on("message", (message) => {
io.emit("message", message);
});
socket.on("jduKafe", ({ username, timeString }) => {
console.log(`Received message: ${username}`);
socket.broadcast.emit("jduKafe", `${timeString}: ${username} -> jdu Kafe`);
});
socket.on("disconnect", () => {
console.log(`Client disconnected: ${socket.id}`);
});
});
const PORT = process.env.PORT || 3001;
server.listen(PORT, () => {
console.log(`Server listening on port ${PORT}`);
});