more math routes
All checks were successful
Build and Deploy / build (push) Successful in 21s
Build and Deploy / deploy (push) Successful in 25s
Build Release / build (push) Successful in 19s

This commit is contained in:
Maximilian Baum
2026-04-02 14:03:56 +02:00
parent aacb2f4287
commit 5be3d127bb
5 changed files with 243 additions and 0 deletions

14
src/routes/api/divide.js Normal file
View File

@@ -0,0 +1,14 @@
const express = require('express');
const router = express.Router();
router.post('/', (req, res) => {
const { input } = req.body;
res.json({ ret: input.a / input.b });
});
router.get('/:a/:b', (req, res) => {
res.json({ ret: Number(req.params.a) / Number(req.params.b) });
});
module.exports = router;

View File

@@ -0,0 +1,14 @@
const express = require('express');
const router = express.Router();
router.post('/', (req, res) => {
const { input } = req.body;
res.json({ ret: input.a * input.b });
});
router.get('/:a/:b', (req, res) => {
res.json({ ret: Number(req.params.a) * Number(req.params.b) });
});
module.exports = router;

View File

@@ -0,0 +1,14 @@
const express = require('express');
const router = express.Router();
router.post('/', (req, res) => {
const { input } = req.body;
res.json({ ret: input.a - input.b });
});
router.get('/:a/:b', (req, res) => {
res.json({ ret: Number(req.params.a) - Number(req.params.b) });
});
module.exports = router;

View File

@@ -352,6 +352,201 @@
}
}
}
},
"/subtract": {
"post": {
"summary": "Subtracts second number from first",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"input": {
"type": "object",
"properties": {
"a": {
"type": "number",
"example": 10
},
"b": {
"type": "number",
"example": 5
}
}
}
}
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/subtract/{a}/{b}": {
"get": {
"summary": "Subtracts second number from first from path parameters",
"parameters": [
{
"name": "a",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"example": "10"
},
{
"name": "b",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"example": "5"
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/multiply": {
"post": {
"summary": "Multiplies two numbers",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"input": {
"type": "object",
"properties": {
"a": {
"type": "number",
"example": 5
},
"b": {
"type": "number",
"example": 10
}
}
}
}
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/multiply/{a}/{b}": {
"get": {
"summary": "Multiplies two numbers from path parameters",
"parameters": [
{
"name": "a",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"example": "5"
},
{
"name": "b",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"example": "10"
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/divide": {
"post": {
"summary": "Divides first number by second",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"input": {
"type": "object",
"properties": {
"a": {
"type": "number",
"example": 10
},
"b": {
"type": "number",
"example": 2
}
}
}
}
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/divide/{a}/{b}": {
"get": {
"summary": "Divides first number by second from path parameters",
"parameters": [
{
"name": "a",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"example": "10"
},
{
"name": "b",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"example": "2"
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
}
}
}

View File

@@ -9,6 +9,9 @@ const toStringRoute = require('./routes/api/toString');
const isNumberRoute = require('./routes/api/isNumber');
const stringSplitRoute = require('./routes/api/stringSplit');
const addRoute = require('./routes/api/add');
const subtractRoute = require('./routes/api/subtract');
const multiplyRoute = require('./routes/api/multiply');
const divideRoute = require('./routes/api/divide');
const docsRoute = require('./routes/docs/main');
@@ -28,6 +31,9 @@ app.use('/api/toString', toStringRoute);
app.use('/api/isNumber', isNumberRoute);
app.use('/api/stringSplit', stringSplitRoute);
app.use('/api/add', addRoute);
app.use('/api/subtract', subtractRoute);
app.use('/api/multiply', multiplyRoute);
app.use('/api/divide', divideRoute);
app.use('/docs', docsRoute);