summaryrefslogtreecommitdiff
path: root/server.mjs
diff options
context:
space:
mode:
authorLi Zhineng <[email protected]>2025-07-01 15:11:09 +0800
committerLi Zhineng <[email protected]>2025-07-01 15:11:09 +0800
commit4fd7219f6000c718432cb2107142867c5ca587b8 (patch)
treedac41afe90dae0d9bec709ba85a2cf49ab3b19b2 /server.mjs
parent7beec630f784d72d21ee621700df42aaa4f4b498 (diff)
downloadserver-4fd7219f6000c718432cb2107142867c5ca587b8.tar.gz
server-4fd7219f6000c718432cb2107142867c5ca587b8.zip
exchange endpoint
Diffstat (limited to 'server.mjs')
-rw-r--r--server.mjs16
1 files changed, 16 insertions, 0 deletions
diff --git a/server.mjs b/server.mjs
index 2bfbde7..b958049 100644
--- a/server.mjs
+++ b/server.mjs
@@ -33,6 +33,22 @@ const server = createServer((req, res) => {
const record = insert.run(mac, key)
res.writeHead(200, { 'Content-Type': 'application/json' })
res.end(JSON.stringify({ status: 200, data: { eagleId: record.lastInsertRowid } }))
+ } else if (req.method === 'GET' && req.url.startsWith('/exchange')) {
+ const params = new URLSearchParams(req.url.substring('/exchange'.length))
+ const device = params.get('device')
+ if (device === null) {
+ res.writeHead(422)
+ res.end()
+ return
+ }
+ const query = database.prepare('SELECT * FROM eagles WHERE id = ?').get(device)
+ if (query === undefined) {
+ res.writeHead(404)
+ res.end()
+ return
+ }
+ res.writeHead(200)
+ res.end(JSON.stringify({ key: query.key }))
} else {
res.writeHead(404)
res.end()