const Koa = require('koa') const app = new Koa() const views = require('koa-views') const json = require('koa-json') const onerror = require('koa-onerror') const bodyparser = require('koa-bodyparser') const logger = require('koa-logger') // const index = require('./routes/index') const users = require('./routes/users') var sdk = require('./routes/sdk'); var db_test = require('./test/db_test'); require('./model/timer') const log = require('./model/logger') var test = require('./test/test'); var accout_info_db_test = require('./test/accout_info_db_test') var nft_test = require('./test/nft_test') var withdraw_test = require('./test/withdraw_czz') // error handler onerror(app) // log.error("getTransactions error:", 'error') // middlewares app.use(bodyparser({ enableTypes: ['json', 'form', 'text'] })) app.use(json()) app.use(logger()) app.use(require('koa-static')(__dirname + '/public')) app.use(views(__dirname + '/views', { extension: 'pug' })) // logger app.use(async (ctx, next) => { const start = new Date() await next() const ms = new Date() - start log.log(`${ctx.method} ${ctx.url} - ${ms}ms`) }) // routes // app.use(index.routes(), index.allowedMethods()) app.use(users.routes(), users.allowedMethods()) app.use(sdk.routes(), sdk.allowedMethods()) app.use(db_test.routes(), db_test.allowedMethods()) app.use(accout_info_db_test.routes(), accout_info_db_test.allowedMethods()) app.use(accout_info_db_test.routes(), accout_info_db_test.allowedMethods()) app.use(nft_test.routes(), nft_test.allowedMethods()) app.use(withdraw_test.routes(), withdraw_test.allowedMethods()) // error-handling app.on('error', (err, ctx) => { log.error('server error ', err.toString()) }); log.error('DeNet-Node-Server start'); module.exports = app