Skip to content

Commit f1731eb

Browse files
committed
feat: allow regex cors
1 parent e8244d6 commit f1731eb

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

fastapi_sio/utils.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
from typing import Any
22
from fastapi import FastAPI
33
from fastapi.middleware.cors import CORSMiddleware
4+
import re
45

56

67
def find_cors_configuration(app: FastAPI, default: Any) -> Any:
@@ -14,11 +15,14 @@ def find_cors_configuration(app: FastAPI, default: Any) -> Any:
1415
continue
1516

1617
origins = middleware.options.get("allow_origins")
17-
18-
# Incompatibility fix between CORSMiddleware and python-socketio
19-
if origins == ["*"]:
20-
origins = "*"
18+
if origins:
19+
# Incompatibility fix between CORSMiddleware and python-socketio
20+
if origins == ["*"]:
21+
origins = "*"
22+
return origins
2123

22-
return origins
24+
origins_regex = middleware.options.get("allow_origin_regex")
25+
if origins_regex:
26+
return lambda value: re.match(origins_regex, value) is not None
2327

2428
return default

0 commit comments

Comments
 (0)