fix: don't echo request back for unknown endpoints

closes #998
This commit is contained in:
Tom Moor
2019-07-25 23:17:45 -07:00
parent 9cbc9aaad6
commit 466ba6ec1f
2 changed files with 26 additions and 0 deletions

View File

@@ -15,6 +15,7 @@ import team from './team';
import integrations from './integrations';
import notificationSettings from './notificationSettings';
import { NotFoundError } from '../errors';
import errorHandling from './middlewares/errorHandling';
import validation from '../middlewares/validation';
import methodOverride from './middlewares/methodOverride';
@@ -44,6 +45,9 @@ router.use('/', shares.routes());
router.use('/', team.routes());
router.use('/', integrations.routes());
router.use('/', notificationSettings.routes());
router.post('*', async (ctx, next) => {
ctx.throw(new NotFoundError('Endpoint not found'));
});
// Router is embedded in a Koa application wrapper, because koa-router does not
// allow middleware to catch any routes which were not explicitly defined.

22
server/api/index.test.js Normal file
View File

@@ -0,0 +1,22 @@
/* eslint-disable flowtype/require-valid-file-annotation */
import TestServer from 'fetch-test-server';
import app from '../app';
import { flushdb } from '../test/support';
const server = new TestServer(app.callback());
beforeEach(flushdb);
afterAll(server.close);
describe('POST unknown endpoint', async () => {
it('should be not found', async () => {
const res = await server.post('/api/blah');
expect(res.status).toEqual(404);
});
});
describe('GET unknown endpoint', async () => {
it('should be not found', async () => {
const res = await server.get('/api/blah');
expect(res.status).toEqual(404);
});
});