404 on GET
Hello everyone,
This is my situation (all code is in **typescript**!)
I have a user service which find a user by its email:
```typescript
import { User } from '../models/user.model';
import { Exception, ExceptionType } from '../../common/exception';

export class UserService {

    public async get(email: string) {
        const u = await User.findOne({ email: email });
        if (!u) {
            throw new Exception(401, ExceptionType.UNKNOWN_USER);
        }

        return { email: u.email, completeName: u.completeName, role: u.role };
    }
}
```

I consume this service in koa using koa-router with this route:

```typescript
import { Context } from 'koa';

import { UserService } from '../services/user.service';

export const GET_USER = {
    path: '/api/user/get/:email',
    middleware: async (ctx: Context) => {
        const userService = new UserService();
        try {
            ctx.body = await userService.get(ctx.params.email);
        } catch (e) {
            ctx.throw(e.statusCode, e.message);
        }
    }
};
```
which is referenced in the router
```typescript
import * as Router from 'koa-router';
import { GET_USER } from './routes/user.routes';

const ROUTER = new Router();
ROUTER.get(GET_USER.path, GET_USER.middleware);

export default ROUTER;
```
Well, every time i try to `GET` the route `/api/user/get/whatev@nope.com` the app returns 404.
if I pass an email address which is not in the database, the UserService correctly throw the exception, but it isn't managed by the router via `ctx.throw`.
It seems that the routes complete the middleware without waiting for the async service call.

I don't understand where I'm failing...
Similar `POST` calls, with almost the same flow work perfectly.

Please send help!
Thanks in advance
Valerio