diff --git a/examples/todo/test/acceptance/application.acceptance.ts b/examples/todo/test/acceptance/application.acceptance.ts index d463e313e6ee..1b680cd9b233 100644 --- a/examples/todo/test/acceptance/application.acceptance.ts +++ b/examples/todo/test/acceptance/application.acceptance.ts @@ -35,7 +35,7 @@ describe('Application', () => { const response = await client .post('/todo') .send(todo) - .expect(200); + .expect(201); expect(response.body).to.containEql(todo); const result = await todoRepo.findById(response.body.id); expect(result).to.containEql(todo); diff --git a/packages/rest/src/rest.server.ts b/packages/rest/src/rest.server.ts index 3652f7947b68..123c54dd08c3 100644 --- a/packages/rest/src/rest.server.ts +++ b/packages/rest/src/rest.server.ts @@ -197,6 +197,11 @@ export class RestServer extends Context implements Server, HttpServerLike { return Promise.resolve(); } + // Any item down the sequence chain can override the statusCode if needed + if (request.method === 'POST') { + response.statusCode = 201; + } + if ( request.method === 'GET' && request.url &&