diff --git a/back/src/Controller/MapController.ts b/back/src/Controller/MapController.ts index 15b35a58..86e3790f 100644 --- a/back/src/Controller/MapController.ts +++ b/back/src/Controller/MapController.ts @@ -26,6 +26,10 @@ export class MapController extends BaseController{ this.App.get("/map", (res: HttpResponse, req: HttpRequest) => { this.addCorsHeaders(res); + res.onAborted(() => { + console.warn('/map request was aborted'); + }) + const query = parse(req.getQuery()); if (typeof query.organizationSlug !== 'string') { @@ -42,9 +46,14 @@ export class MapController extends BaseController{ } (async () => { - const mapDetails = await adminApi.fetchMapDetails(query.organizationSlug as string, query.worldSlug as string, query.roomSlug as string|undefined); + try { + const mapDetails = await adminApi.fetchMapDetails(query.organizationSlug as string, query.worldSlug as string, query.roomSlug as string|undefined); - res.writeStatus("200 OK").end(JSON.stringify(mapDetails)); + res.writeStatus("200 OK").end(JSON.stringify(mapDetails)); + } catch (e) { + console.error(e); + res.writeStatus("500 Internal Server Error").end("An error occurred"); + } })(); }); diff --git a/back/src/Services/AdminApi.ts b/back/src/Services/AdminApi.ts index 2b3e15ae..9e64296c 100644 --- a/back/src/Services/AdminApi.ts +++ b/back/src/Services/AdminApi.ts @@ -17,13 +17,13 @@ class AdminApi { return Promise.reject('No admin backoffice set!'); } - const params: { organizationSlug: string, worldSlug: string, mapSlug?: string } = { + const params: { organizationSlug: string, worldSlug: string, roomSlug?: string } = { organizationSlug, worldSlug }; if (roomSlug) { - params.mapSlug = roomSlug; + params.roomSlug = roomSlug; } const res = await Axios.get(ADMIN_API_URL+'/api/map',