awsmatrix/server.js
2025-01-09 21:57:57 +05:30

31 lines
909 B
JavaScript

import Fastify from "fastify";
import sequelizePlugin from "./plugins/sequelize.js";
import dotenv from "dotenv";
import { executeQueryAsync, retrieveResultsAsync } from "./services/athena.js";
dotenv.config();
import * as queries from "./queries.js";
const server = Fastify({ logger: true });
server.register(sequelizePlugin);
server.get("/", async (request, reply) => {
const [results, metadata] = await server.sequelize.query('SELECT 1 + 2 AS result');
console.log(results);
console.log(metadata);
return { hello: "world" };
});
server.get("/products", async (request, reply) => {
const query = queries.productQuery;
const queryExecutionId = await executeQueryAsync(query);
const results = await retrieveResultsAsync(queryExecutionId);
return { results };
});
try {
await server.listen({ port: 3000 })
} catch (err) {
server.log.error(err)
process.exit(1)
}