Skip to content

Commit

Permalink
Sort routes in RoutingMiddleware
Browse files Browse the repository at this point in the history
  • Loading branch information
kosciCZ committed Mar 18, 2024
1 parent 994f53f commit d0a4d29
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions connexion/middleware/routing.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
from connexion.operations import AbstractOperation
from connexion.resolver import Resolver
from connexion.spec import Specification
from connexion.utils import sort_routes

_scope: ContextVar[dict] = ContextVar("SCOPE")

Expand Down Expand Up @@ -129,6 +130,8 @@ def add_api(
next_app=self.app,
**kwargs,
)
# sort routes to make sure that more specific routes are matched first
api.router.routes = sort_routes(api.router.routes, key=lambda r: r.path)

# If an API with the same base_path was already registered, chain the new API as its
# default. This way, if no matching route is found on the first API, the request is
Expand Down

0 comments on commit d0a4d29

Please sign in to comment.