diff --git a/lib/base/webserver/WebServer.dart b/lib/base/webserver/WebServer.dart index 2436f6b..d4dddee 100644 --- a/lib/base/webserver/WebServer.dart +++ b/lib/base/webserver/WebServer.dart @@ -13,7 +13,7 @@ abstract class WebServer { void start(int port, {Response? Function(Request, Map)? interceptor, - TokenResult Function(String?)? tokenCheck}); + Future Function(String?)? tokenCheck}); void stop(); void addHandler(handler); } diff --git a/lib/base/webserver/impl/ShelfWebServer.dart b/lib/base/webserver/impl/ShelfWebServer.dart index d02e671..a7ad3a9 100644 --- a/lib/base/webserver/impl/ShelfWebServer.dart +++ b/lib/base/webserver/impl/ShelfWebServer.dart @@ -17,7 +17,7 @@ class ShelfWebServer implements WebServer { final Router _router = Router(); final Uuid uuid = Uuid(); final Map _wsCall = {}; - TokenResult Function(String?)? tokenCheck; + Future Function(String?)? tokenCheck; Response? Function(Request, Map)? interceptor; ShelfWebServer(this.logger); @@ -159,7 +159,7 @@ class ShelfWebServer implements WebServer { @override void start(int port, {Response? Function(Request, Map)? interceptor, - TokenResult Function(String?)? tokenCheck}) async { + Future Function(String?)? tokenCheck}) async { var pipeline = Pipeline() //生成请求id .addMiddleware(requestIdMiddleware()) @@ -226,7 +226,7 @@ class ShelfWebServer implements WebServer { bool check = true; if (tokenCheck != null) { //自定义token校验函数存在 - var checkResult = tokenCheck!(token); + var checkResult = await tokenCheck!(token); if (!checkResult.status) { //校验失败 response = Response.ok(checkResult.errMsg);