avi-l-lotr-sdk
Version:
An SDK for interacting with the Lord of the Rings API.
108 lines (107 loc) • 4.16 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const express_1 = __importDefault(require("express"));
const cors_1 = __importDefault(require("cors"));
const config_1 = __importDefault(require("./config"));
const app = (0, express_1.default)();
app.use((0, cors_1.default)());
app.get("/movie", (req, res) => __awaiter(void 0, void 0, void 0, function* () {
try {
const { limit, offset, page } = req.query;
const response = yield config_1.default.get(`/movie?limit=${limit}&offset=${offset}&page=${page}`);
const movies = response.data;
res.json(movies);
}
catch (error) {
console.error(error);
res.status(500).json({ error: "An error occurred" });
}
}));
app.get("/movie/:id", (req, res) => __awaiter(void 0, void 0, void 0, function* () {
try {
const { id } = req.params;
const response = yield config_1.default.get(`/movie/${id}`);
const movie = response.data;
res.json(movie);
}
catch (error) {
console.error(error);
res.status(500).json({ error: "An error occurred" });
}
}));
app.get("/movie/:id/quote", (req, res) => __awaiter(void 0, void 0, void 0, function* () {
try {
const { id } = req.params;
const response = yield config_1.default.get(`/movie/${id}/quote`);
const movie = response.data;
res.json(movie);
}
catch (error) {
console.error(error);
res.status(500).json({ error: "An error occurred" });
}
}));
app.get("/quote", (req, res) => __awaiter(void 0, void 0, void 0, function* () {
try {
const { limit, offset, page } = req.query;
const response = yield config_1.default.get(`/quote?limit=${limit}&offset=${offset}&page=${page}`);
const quotes = response.data;
res.json(quotes);
}
catch (error) {
console.error(error);
res.status(500).json({ error: "An error occurred" });
}
}));
app.get("/quote/:id", (req, res) => __awaiter(void 0, void 0, void 0, function* () {
try {
const { id } = req.params;
const response = yield config_1.default.get(`/quote/${id}`);
const quote = response.data;
res.json(quote);
}
catch (error) {
console.error(error);
res.status(500).json({ error: "An error occurred" });
}
}));
app.get("/character", (req, res) => __awaiter(void 0, void 0, void 0, function* () {
try {
const { limit, offset, page } = req.query;
const response = yield config_1.default.get(`/character?limit=${limit}&offset=${offset}&page=${page}`);
const characters = response.data;
res.json(characters);
}
catch (error) {
console.error(error);
res.status(500).json({ error: "An error occurred" });
}
}));
app.get("/character/:id", (req, res) => __awaiter(void 0, void 0, void 0, function* () {
try {
const { id } = req.params;
const response = yield config_1.default.get(`/character/${id}`);
const character = response.data;
res.json(character);
}
catch (error) {
console.error(error);
res.status(500).json({ error: "An error occurred" });
}
}));
const port = 3000;
app.listen(port, () => {
console.log(`Server running on port ${port}`);
});