[feat] send json type content when call ctx.throw
## Describe the feature

Some time we want our server always reponse with json type, even if it throw custom error, for such code:
```javascript
ctx.throw(403, 'need right access', {
      message: JSON.stringify({code: 1234, msg: 'you dont have right permission', userId: 'xxx'}),
      expose: true
})
```
But koa reponse all errors with `text` type, we can not change it.
## Checklist

- [x] I have searched through GitHub issues for similar issues.
- [x] I have completely read through the README and documentation.
