mirror of
https://github.com/maubot/maubot.git
synced 2024-10-01 01:06:10 -04:00
Fix PluginWebApp base path handling (#240)
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. Fixes #239
This commit is contained in:
parent
c218c8cf61
commit
65be63fdd2
@ -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…
Reference in New Issue
Block a user