let stream_buffers = require('stream-buffers')
-return async (env, api, func) => {
+return async (env, endpoint, func) => {
let Problem = await _require('/_lib/Problem.jst')
let result
)
env.request.pipe(write_stream)
let arguments = JSON.parse((await data).toString())
- console.log('api', api, 'arguments', JSON.stringify(arguments))
+ console.log('endpoint', endpoint, 'arguments', JSON.stringify(arguments))
result = await func(...arguments)
if (result === undefined)
result = null
- console.log('api', api, 'result', JSON.stringify(result))
+ console.log('endpoint', endpoint, 'result', JSON.stringify(result))
}
catch (error) {
let problem =
// title
'Internal server error',
// details
- error.message,
+ (error.stack || error.message).toString()
// status
500
)
- console.log('api', api, 'problem', problem.detail)
+ console.log('endpoint', endpoint, 'problem', problem.detail)
env.mime_type = 'application/problem+json; charset=utf-8'
env.site.serve(