mirror of
https://github.com/maubot/maubot
synced 2025-08-29 10:00:38 +00:00
Fix PluginWebApp base path handling
Previously, the webapp handler would match without respect to the trailing slash, e.g. matching "foo" for "foo2". This behavior is changed to respect the trailing slash. Fix #239
This commit is contained in:
parent
91f214819a
commit
618493a954
1 changed files with 3 additions and 3 deletions
|
@ -64,14 +64,14 @@ class MaubotServer:
|
|||
if request.path.startswith(path):
|
||||
request = request.clone(
|
||||
rel_url=request.rel_url.with_path(
|
||||
request.rel_url.path[len(path) :]
|
||||
request.rel_url.path[len(path) - 1 :]
|
||||
).with_query(request.query_string)
|
||||
)
|
||||
return await app.handle(request)
|
||||
return web.Response(status=404)
|
||||
|
||||
def get_instance_subapp(self, instance_id: str) -> tuple[PluginWebApp, str]:
|
||||
subpath = self.config["server.plugin_base_path"] + instance_id
|
||||
subpath = self.config["server.plugin_base_path"] + instance_id + "/"
|
||||
url = self.config["server.public_url"] + subpath
|
||||
try:
|
||||
return self.plugin_routes[subpath], url
|
||||
|
@ -82,7 +82,7 @@ class MaubotServer:
|
|||
|
||||
def remove_instance_webapp(self, instance_id: str) -> None:
|
||||
try:
|
||||
subpath = self.config["server.plugin_base_path"] + instance_id
|
||||
subpath = self.config["server.plugin_base_path"] + instance_id + "/"
|
||||
self.plugin_routes.pop(subpath).clear()
|
||||
except KeyError:
|
||||
return
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue