Строгий режим уже активен по умолчанию (https://github.com/cojs/co-body#options), поэтому вам не нужно об этом беспокоиться. Этот код работает для меня:
ctx.body = {
status: 'success',
json: ctx.request.body.json
};
Я использовал Почтальон, чтобы отправить его на сервер koa, и получил ответ в Почтальоне:
{
"status": "success",
"json": {
"id": 1,
"name": "Joe"
}
}
Как видите, «id» - это число. Поскольку вы не писали о своем клиенте, я предполагаю, что это может быть браузер? Если это так, попробуйте использовать функцию JSON.parse (), потому что вы можете получить строку из вашего пост-запроса. Смотрите этот пример:
JSON.parse("{\"json\":{\"id\":1}}");
Вы также можете попробовать Postman в качестве клиента и посмотреть, работает ли он (https://www.getpostman.com/).