From fd6c0e74cb2cdfe54f867bf0e6f3491cab4a1d9b Mon Sep 17 00:00:00 2001 From: MiaoWoo Date: Thu, 20 Jun 2019 18:25:48 +0800 Subject: [PATCH] feat: add module auto check Signed-off-by: MiaoWoo --- packages/cc-server-core/src/function/handle.ts | 12 ++++++++---- packages/cc-server-core/src/index.ts | 5 ++++- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/packages/cc-server-core/src/function/handle.ts b/packages/cc-server-core/src/function/handle.ts index acbd4c8..657dd04 100644 --- a/packages/cc-server-core/src/function/handle.ts +++ b/packages/cc-server-core/src/function/handle.ts @@ -2,6 +2,7 @@ import { controller, response, requestBody, httpGet, httpPost, queryParam, requestParam } from 'inversify-express-utils'; import { inject, postConstruct } from 'inversify'; +import { Vaild, NotBlank, NotNull } from 'cc-server-binding' import { DBClient } from 'cc-server-db' import 'cc-server-db-mongo' @@ -10,10 +11,12 @@ import 'cc-server-db-mongo' const TABLE = 'users' -interface ExampleModel { +class ExampleModel { _id: string; + @NotBlank("用户名不得为空!") username: string; password: string; + @NotNull() age: number; email: string; } @@ -44,9 +47,10 @@ export class Controller { @httpPost('/') public async create( - @requestBody() model: Model - ): Promise { - return this.client.insertOne(model); + @Vaild() @requestBody() model: ExampleModel + ): Promise { + //return this.client.insertOne(model); + return this.client.findOneById('5d0af7c039179a28de618cb8'); } @httpPost('/:id') diff --git a/packages/cc-server-core/src/index.ts b/packages/cc-server-core/src/index.ts index 451c134..2faf9e2 100644 --- a/packages/cc-server-core/src/index.ts +++ b/packages/cc-server-core/src/index.ts @@ -1,6 +1,7 @@ import 'reflect-metadata'; import { InversifyExpressServer, getRouteInfo } from 'inversify-express-utils'; import * as bodyParser from 'body-parser'; +import { rebuildServer } from 'cc-server-binding' import { container, buildProviderModule } from 'cc-server-ioc'; import * as prettyjson from "prettyjson"; @@ -16,11 +17,13 @@ server.setConfig((app) => { extended: true })); app.use(bodyParser.json()); - app.use(bodyParser.raw()) + app.use(bodyParser.raw()); }); let serverInstance = server.build(); +rebuildServer(container); + const routeInfo = getRouteInfo(container); console.log(prettyjson.render({ routes: routeInfo }));