configuration.ts 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import { Configuration, App, Inject, MidwayDecoratorService } from '@midwayjs/core';
  2. import * as koa from '@midwayjs/koa';
  3. import * as validate from '@midwayjs/validate';
  4. import * as info from '@midwayjs/info';
  5. import { join } from 'path';
  6. import * as FreeFrame from 'free-midway-component';
  7. import * as jwt from '@midwayjs/jwt';
  8. import { VerifyTokenInit } from './decorator/verifyToken.decorator';
  9. import { CheckPermissionCodeInit } from './decorator/checkPermissionCode';
  10. // import { CheckTokenMiddleware } from './middleware/checkToken.middleware';
  11. import * as swagger from '@midwayjs/swagger';
  12. import * as redis from '@midwayjs/redis';
  13. import { CheckOnePointLoginMiddleware } from './middleware/checkOnePointLogin.middleware';
  14. import * as i18n from '@midwayjs/i18n';
  15. import { SetLocaleToCtxMiddleware } from './middleware/setLocaleToCtx.middleware';
  16. @Configuration({
  17. imports: [
  18. koa,
  19. validate,
  20. FreeFrame,
  21. jwt,
  22. redis,
  23. i18n,
  24. {
  25. component: info,
  26. enabledEnvironment: ['local'],
  27. },
  28. {
  29. component: swagger,
  30. enabledEnvironment: ['local'],
  31. },
  32. ],
  33. importConfigs: [join(__dirname, './config')],
  34. })
  35. export class MainConfiguration {
  36. @App('koa')
  37. app: koa.Application;
  38. @Inject()
  39. decoratorService: MidwayDecoratorService;
  40. async onReady() {
  41. this.app.getMiddleware().insertFirst(SetLocaleToCtxMiddleware)
  42. this.app.getMiddleware().insertAfter(CheckOnePointLoginMiddleware, 'checkToken');
  43. // 注解
  44. VerifyTokenInit(this.decoratorService);
  45. CheckPermissionCodeInit(this.decoratorService);
  46. }
  47. }