Skip to content

Commit 23e47f2

Browse files
authored
Makes sure routes don't overlap and yield a header set error (#2559)
1 parent 9ab488b commit 23e47f2

File tree

4 files changed

+13
-9
lines changed

4 files changed

+13
-9
lines changed

src/Controllers/AnalyticsController.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import AdaptableController from './AdaptableController';
22
import { AnalyticsAdapter } from '../Adapters/Analytics/AnalyticsAdapter';
33

4+
const AppOpenedEventName = 'AppOpened';
5+
46
export class AnalyticsController extends AdaptableController {
57
appOpened(req) {
68
return Promise.resolve().then(() => {
@@ -13,8 +15,12 @@ export class AnalyticsController extends AdaptableController {
1315
}
1416

1517
trackEvent(req) {
18+
const eventName = req.params.eventName;
19+
if (eventName === AppOpenedEventName) {
20+
return this.appOpened(req);
21+
}
1622
return Promise.resolve().then(() => {
17-
return this.adapter.trackEvent(req.params.eventName, req.body, req);
23+
return this.adapter.trackEvent(eventName, req.body, req);
1824
}).then((response) => {
1925
return { response: response || {} };
2026
}).catch((err) => {

src/Routers/AnalyticsRouter.js

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,6 @@
11
// AnalyticsRouter.js
22
import PromiseRouter from '../PromiseRouter';
33

4-
function appOpened(req) {
5-
const analyticsController = req.config.analyticsController;
6-
return analyticsController.appOpened(req);
7-
}
8-
94
function trackEvent(req) {
105
const analyticsController = req.config.analyticsController;
116
return analyticsController.trackEvent(req);
@@ -14,7 +9,6 @@ function trackEvent(req) {
149

1510
export class AnalyticsRouter extends PromiseRouter {
1611
mountRoutes() {
17-
this.route('POST','/events/AppOpened', appOpened);
1812
this.route('POST','/events/:eventName', trackEvent);
1913
}
2014
}

src/Routers/SessionsRouter.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ export class SessionsRouter extends ClassesRouter {
1111
}
1212

1313
handleGet(req) {
14+
if (req.params.objectId === 'me') {
15+
return this.handleMe(req);
16+
}
1417
req.params.className = '_Session';
1518
return super.handleGet(req);
1619
}
@@ -49,7 +52,6 @@ export class SessionsRouter extends ClassesRouter {
4952
}
5053

5154
mountRoutes() {
52-
this.route('GET','/sessions/me', req => { return this.handleMe(req); });
5355
this.route('GET', '/sessions', req => { return this.handleFind(req); });
5456
this.route('GET', '/sessions/:objectId', req => { return this.handleGet(req); });
5557
this.route('POST', '/sessions', req => { return this.handleCreate(req); });

src/Routers/UsersRouter.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@ export class UsersRouter extends ClassesRouter {
1818
}
1919

2020
handleGet(req) {
21+
if (req.params.objectId === 'me') {
22+
return this.handleMe(req);
23+
}
2124
req.params.className = '_User';
2225
return super.handleGet(req);
2326
}
@@ -198,7 +201,6 @@ export class UsersRouter extends ClassesRouter {
198201
mountRoutes() {
199202
this.route('GET', '/users', req => { return this.handleFind(req); });
200203
this.route('POST', '/users', req => { return this.handleCreate(req); });
201-
this.route('GET', '/users/me', req => { return this.handleMe(req); });
202204
this.route('GET', '/users/:objectId', req => { return this.handleGet(req); });
203205
this.route('PUT', '/users/:objectId', req => { return this.handleUpdate(req); });
204206
this.route('DELETE', '/users/:objectId', req => { return this.handleDelete(req); });

0 commit comments

Comments
 (0)