Skip to content

Commit f6ffdf5

Browse files
fix: prefix api paths. (#91)
2 parents 5b39814 + 04802d6 commit f6ffdf5

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

nitric/resources/apis.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ class ApiOptions:
7575
def __init__(
7676
self,
7777
path: str = "",
78-
middleware: List[Middleware] = None,
78+
middleware: List[Middleware] = [],
7979
security_definitions: dict[str, SecurityDefinition] = None,
8080
security: dict[str, List[str]] = None,
8181
):
@@ -91,7 +91,7 @@ class RouteOptions:
9191

9292
middleware: Union[None, List[Middleware]]
9393

94-
def __init__(self, middleware: List[Middleware] = None):
94+
def __init__(self, middleware: List[Middleware] = []):
9595
"""Construct a new route options object."""
9696
self.middleware = middleware
9797

@@ -135,7 +135,7 @@ def __init__(self, name: str, opts: ApiOptions = None):
135135
opts = ApiOptions()
136136

137137
self.name = name
138-
self.middleware = opts.middleware
138+
self.middleware = opts.middleware if opts.middleware is not None else []
139139
self.path = opts.path
140140
self.routes = []
141141
self.security_definitions = opts.security_definitions
@@ -291,8 +291,8 @@ class Route:
291291
def __init__(self, api: Api, path: str, opts: RouteOptions):
292292
"""Define a route to be handled by the provided API."""
293293
self.api = api
294-
self.path = path
295-
self.middleware = opts.middleware
294+
self.path = api.path.join(path)
295+
self.middleware = opts.middleware if opts.middleware is not None else []
296296

297297
def method(self, methods: List[HttpMethod], *middleware: HttpMiddleware, opts: MethodOptions = None):
298298
"""Register middleware for multiple HTTP Methods."""
@@ -338,7 +338,7 @@ def __init__(
338338
self.route = route
339339
self.methods = methods
340340
self.server = FunctionServer(ApiWorkerOptions(route.api.name, route.path, methods, opts))
341-
self.server.http(*middleware)
341+
self.server.http(*route.api.middleware, *route.middleware, *middleware)
342342

343343
def start(self):
344344
"""Start the server which will respond to incoming requests."""

0 commit comments

Comments
 (0)