diff --git a/pywebio/platform/aiohttp.py b/pywebio/platform/aiohttp.py index 0359a398..1a39617f 100644 --- a/pywebio/platform/aiohttp.py +++ b/pywebio/platform/aiohttp.py @@ -13,7 +13,7 @@ from .utils import make_applications, render_page, cdn_validation, deserialize_binary_event from ..session import CoroutineBasedSession, ThreadBasedSession, register_session_implement_for_target, Session from ..session.base import get_session_info_from_headers -from ..utils import get_free_port, STATIC_PATH, iscoroutinefunction, isgeneratorfunction +from ..utils import get_free_port, STATIC_PATH, iscoroutinefunction, isgeneratorfunction, func_params logger = logging.getLogger(__name__) @@ -45,9 +45,9 @@ def _webio_handler(applications, cdn, websocket_settings, check_origin_func=_is_ :param callable check_origin_func: check_origin_func(origin, host) -> bool :return: aiohttp Request Handler """ - ioloop = asyncio.get_event_loop() - async def wshandle(request: web.Request): + ioloop = asyncio.get_event_loop() + origin = request.headers.get('origin') if origin and not check_origin_func(origin=origin, host=request.host): return web.Response(status=403, text="Cross origin websockets not allowed")