diff --git a/README.md b/README.md index a28e0fe..a92f268 100644 --- a/README.md +++ b/README.md @@ -1 +1,9 @@ ## This server processes the qrcode requests on our merchandise + +```javascript + +``` diff --git a/package-lock.json b/package-lock.json index 4e636e1..9eee176 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "1.0.0", "license": "ISC", "dependencies": { + "cors": "^2.8.5", "dotenv": "^16.4.1", "express": "^4.18.2", "express-useragent": "^1.0.15", @@ -18,6 +19,7 @@ "pino-pretty": "^10.3.1" }, "devDependencies": { + "@types/cors": "^2.8.17", "@types/express": "^4.17.21", "@types/express-useragent": "^1.0.5", "@types/node-telegram-bot-api": "^0.64.2", @@ -121,6 +123,15 @@ "@types/node": "*" } }, + "node_modules/@types/cors": { + "version": "2.8.17", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", + "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/express": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", @@ -699,6 +710,18 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", @@ -1804,6 +1827,14 @@ "node": "*" } }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/object-inspect": { "version": "1.13.1", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", diff --git a/package.json b/package.json index 984ea05..c005d88 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ "author": "", "license": "ISC", "devDependencies": { + "@types/cors": "^2.8.17", "@types/express": "^4.17.21", "@types/express-useragent": "^1.0.5", "@types/node-telegram-bot-api": "^0.64.2", @@ -18,6 +19,7 @@ "typescript": "^5.3.3" }, "dependencies": { + "cors": "^2.8.5", "dotenv": "^16.4.1", "express": "^4.18.2", "express-useragent": "^1.0.15", diff --git a/server.ts b/server.ts index d50ab16..73b9cf0 100644 --- a/server.ts +++ b/server.ts @@ -2,6 +2,7 @@ import express, { Express } from "express"; import dotenv from "dotenv"; import logger from "./src/logger/logger"; import useragent from "express-useragent"; +import cors from "cors"; dotenv.config(); @@ -12,18 +13,27 @@ const host = process.env.HOST || "localhost"; const port = Number(process.env.PORT) || 3000; // set up middleware - +/* +app.use( + cors({ + origin: "*", + }) +); */ app.use(useragent.express()); app.use("/", qrCodeRoutes); app.use((req, res, next) => { console.log("req not found, path:", req.path); - res.redirect(process.env.REDIRECT_URL as string); + + res.status(200); + //res.redirect(process.env.REDIRECT_URL as string); }); app.use((err: any, req: any, res: any, next: any) => { console.log("req err", err.stack); - res.status(500).send({ err: "invalid request" }); + + res.status(200); + //res.redirect(process.env.REDIRECT_URL as string); }); // start server diff --git a/src/controllers/qrCodeController.ts b/src/controllers/qrCodeController.ts index ee9bb6a..b3183ef 100644 --- a/src/controllers/qrCodeController.ts +++ b/src/controllers/qrCodeController.ts @@ -37,7 +37,9 @@ export async function Redirect(req: Request, res: Response) { parse_mode: "HTML", }); - res.redirect(process.env.REDIRECT_URL as string); + res.status(200).send({ msg: "ok" }); + + //res.redirect(process.env.REDIRECT_URL as string); } catch (err) { console.log(err); res.status(500).send({ err: "invalid request" }); diff --git a/start.sh b/start.sh new file mode 100755 index 0000000..27be35e --- /dev/null +++ b/start.sh @@ -0,0 +1,2 @@ +screen -dmS merchQRCodeManager | exit 0 +screen -S merchQRCodeManager -p 0 -X stuff 'npx tsc && node build/server.js\n' \ No newline at end of file