serum-rest-server/src/routes.ts

36 lines
811 B
TypeScript
Raw Normal View History

2020-10-20 02:21:05 -07:00
import express from "express";
import { SerumApi } from "./exchange/api";
import expressAsyncHandler from "express-async-handler";
import { logger } from "./utils";
2020-10-20 02:21:05 -07:00
const router = express.Router();
let api: SerumApi;
2020-10-20 02:21:05 -07:00
router.get("/", (req, res, next) => {
res.send("Hello from the Serum rest server!");
2020-10-20 02:21:05 -07:00
});
router.use(
"/",
expressAsyncHandler(async (req, res, next) => {
if (!api) {
logger.debug("Creating api.");
api = await SerumApi.create();
}
next();
})
);
router.get(
"/market_info",
expressAsyncHandler(async (req, res, next) => {
logger.info("Received request to get market_info");
api
.getMarketInfo()
.then((marketInfo) => res.send({ status: "ok", data: marketInfo }))
.catch((err) => next(err));
})
);
2020-10-20 02:21:05 -07:00
export { router as default };