koa ctx post body plain code example

Example 1: how pass data from body in koa js

httpRouter.post('/syncCallJS/*', async (ctx, next) => {
 const idx = syncCallJSIndex++
 const channelId = ctx.params[0]
 const payload = ctx.request.body
 const device = Device.getDevice(channelId)
 if (device) {
  const terminal = new SyncTerminal()
  let data
  terminal.channelId = channelId
  syncV8Hub.join(terminal, false)
  payload.params.syncId = 100000 + idx
  payload.id = 100000 + idx
  data = await terminal.send(payload)
  ctx.response.status = 200
  ctx.type = 'application/json'
  ctx.response.body = JSON.stringify(data.ret)
 } else {
  ctx.response.status = 500
 }
 await next()
})

Example 2: how pass data from body in koa js

ctx.throw(400, 'Grant: mount session middleware first')
if (ctx.method === 'POST' && !ctx.request.body) {
 ctx.throw(400, 'Grant: mount body parser middleware first')
  ctx.session.grant.override = override
 if (Object.keys(ctx.request.body || {}).length) {
  ctx.session.grant.dynamic = ctx.request.body