From a433f57a5848a5e4e43453693a0caf234ff73ebb Mon Sep 17 00:00:00 2001 From: Lncvrt Date: Fri, 2 Oct 2026 10:47:59 -0700 Subject: [PATCH] Add authorization header to versions (not in use yet) --- src/index.ts | 9 +++++---- src/lib/util.ts | 24 ++++++++++++------------ src/routes/launcher/versions/get.ts | 5 +++++ 3 files changed, 22 insertions(+), 16 deletions(-) diff --git a/src/index.ts b/src/index.ts index 21b89e6..ab1f499 100644 --- a/src/index.ts +++ b/src/index.ts @@ -179,11 +179,11 @@ setInterval(async () => { app.ws('/ws', { maxPayloadLength: 10 * 1024 * 1024, - open (ws) { + open(ws) { clients.add(ws) // console.log(ws.id, 'connected') }, - async message (ws, message: any) { + async message(ws, message: any) { console.log('received:', message, 'from', ws.id) if (message == 'ping') ws.send('ping') if (message.type) { @@ -903,7 +903,7 @@ app.ws('/ws', { } } }, - async close (ws) { + async close(ws) { clients.forEach(client => { if (client.id === ws.id) clients.delete(client) }) @@ -986,7 +986,8 @@ app.get('/launcher/versions', context => launcherVersionsHandler(context), { hide: true }) ), - clientplatform: t.Optional(t.String()) + clientplatform: t.Optional(t.String()), + authorization: t.Optional(t.String()) }) }) app.get('/launcher/latest', launcherLatestHandler, { diff --git a/src/lib/util.ts b/src/lib/util.ts index 8997fa5..c941061 100644 --- a/src/lib/util.ts +++ b/src/lib/util.ts @@ -41,19 +41,19 @@ export const getDatabaseConnection = (type: number) => { const env = type === 0 ? { - host: process.env.DB_HOST ?? 'localhost', - port: Number(process.env.DB_PORT) || 3306, - user: process.env.GAMES_DB_USER ?? '', - pass: process.env.GAMES_DB_PASS ?? '', - name: process.env.GAMES_DB_NAME ?? '' - } + host: process.env.DB_HOST ?? 'localhost', + port: Number(process.env.DB_PORT) || 3306, + user: process.env.GAMES_DB_USER ?? '', + pass: process.env.GAMES_DB_PASS ?? '', + name: process.env.GAMES_DB_NAME ?? '' + } : { - host: process.env.DB_HOST ?? 'localhost', - port: Number(process.env.DB_PORT) || 3306, - user: process.env.BERRYDASH_DB_USER ?? '', - pass: process.env.BERRYDASH_DB_PASS ?? '', - name: process.env.BERRYDASH_DB_NAME ?? '' - } + host: process.env.DB_HOST ?? 'localhost', + port: Number(process.env.DB_PORT) || 3306, + user: process.env.BERRYDASH_DB_USER ?? '', + pass: process.env.BERRYDASH_DB_PASS ?? '', + name: process.env.BERRYDASH_DB_NAME ?? '' + } const connection = mysql.createConnection({ host: env.host, diff --git a/src/routes/launcher/versions/get.ts b/src/routes/launcher/versions/get.ts index f53dc96..bc2ff3c 100644 --- a/src/routes/launcher/versions/get.ts +++ b/src/routes/launcher/versions/get.ts @@ -9,6 +9,11 @@ export const handler = async (context: Context) => { return jsonResponse({ error: 'Failed to connect to database' }, 500) const { connection, db } = dbResult + const authorization = + context.headers.authorization?.trim() == '' || + context.headers.authorization == null + ? null + : context.headers.authorization const clientplatform = context.headers.clientplatform const platform = clientplatform?.split('-')[0] const arch = clientplatform?.split('-')[1]