From ab900123aa3020e23b9322950adcef09bea192f6 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Mon, 18 Dec 2023 19:09:47 +0800 Subject: [PATCH] bugfix --- ahserver/processorResource.py | 14 +++++++++++++- ahserver/websocketProcessor.py | 1 + 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/ahserver/processorResource.py b/ahserver/processorResource.py index 72115ea..c9aa0c3 100755 --- a/ahserver/processorResource.py +++ b/ahserver/processorResource.py @@ -52,6 +52,7 @@ from .restful import DBCrud from .dbadmin import DBAdmin from .filedownload import file_download, path_decode from .utils import unicode_escape +from .filetest import current_fileno def getHeaderLang(request): al = request.headers.get('Accept-Language') @@ -228,6 +229,7 @@ class ProcessorResource(AppLogger, StaticResource,Url2File): async def get_user(): return await auth.get_auth(request) + f_cnt1 = current_fileno() self.y_env.i18n = serveri18n self.y_env.file_realpath = file_realpath self.y_env.redirect = redirect @@ -253,6 +255,7 @@ class ProcessorResource(AppLogger, StaticResource,Url2File): request['request_filename'] = self.request_filename path = request.path config = getConfig() + f_cnt2 = current_fileno() request['port'] = config.website.port if config.website.dbadm and path.startswith(config.website.dbadm): pp = path.split('/')[2:] @@ -264,6 +267,7 @@ class ProcessorResource(AppLogger, StaticResource,Url2File): action = pp[2] adm = DBAdmin(request,dbname,tablename,action) return await adm.render() + f_cnt3 = current_fileno() if config.website.dbrest and path.startswith(config.website.dbrest): pp = path.split('/')[2:] if len(pp)<2: @@ -276,6 +280,7 @@ class ProcessorResource(AppLogger, StaticResource,Url2File): id = pp[2] crud = DBCrud(request,dbname,tablename,id=id) return await crud.dispatch() + f_cnt4 = current_fileno() if config.website.download and path.startswith(config.website.download): pp = path.split('/')[2:] if len(pp)<1: @@ -285,20 +290,27 @@ class ProcessorResource(AppLogger, StaticResource,Url2File): path = path_decode(dp) return await file_download(request, path) + f_cnt5 = current_fileno() # processor = self.url2processor(request, str(request.url)) processor = self.url2processor(request, str(request.url), self.request_filename) if processor: - return await processor.handle(request) + ret = await processor.handle(request) + f_cnt6 = current_fileno() + print(f'{f_cnt1=}, {f_cnt2=}, {f_cnt3=}, {f_cnt4=}, {f_cnt5=}, {f_cnt6=}') + return ret + f_cnt6 = current_fileno() if self.request_filename and await self.isHtml(self.request_filename): return await self.html_handle(request, self.request_filename) + f_cnt7 = current_fileno() if self.request_filename and os.path.isdir(self.request_filename): config = getConfig() if not config.website.allowListFolder: self.error('%s:not found' % str(request.url)) raise HTTPNotFound # print(f'{self.request_filename=}, {str(request.url)=}') + f_cnt8 = current_fileno() return await super()._handle(request) def gethost(self, request): diff --git a/ahserver/websocketProcessor.py b/ahserver/websocketProcessor.py index ddff517..80b0862 100755 --- a/ahserver/websocketProcessor.py +++ b/ahserver/websocketProcessor.py @@ -114,6 +114,7 @@ class WebsocketProcessor(PythonScriptProcessor): # print('msg.data=', msg.data) elif msg.type == aiohttp.WSMsgType.ERROR: # print('ws connection closed with exception %s' % ws.exception()) + pass else: print('datatype error', msg.type) # print('5----------------------------------')