Return JSON errors for unknown resources under /matrix/client. (#11930)

Re-applies the changes from 3e0cfd447e (#11602),
reverting d93ec0a0ba (#11764) now that the conflict
with the webclient listener was fixed in 119edf51eb (#11895).
This commit is contained in:
Patrick Cloke 2022-02-08 07:06:25 -05:00 committed by GitHub
parent 3655585e85
commit 380c3d40f4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 7 deletions

1
changelog.d/11930.bugfix Normal file
View File

@ -0,0 +1 @@
Fix a long-standing bug that some unknown endpoints would return HTML error pages instead of JSON `M_UNRECOGNIZED` errors.

View File

@ -26,6 +26,7 @@ import synapse
import synapse.config.logger
from synapse import events
from synapse.api.urls import (
CLIENT_API_PREFIX,
FEDERATION_PREFIX,
LEGACY_MEDIA_PREFIX,
MEDIA_R0_PREFIX,
@ -195,13 +196,7 @@ class SynapseHomeServer(HomeServer):
resources.update(
{
"/_matrix/client/api/v1": client_resource,
"/_matrix/client/r0": client_resource,
"/_matrix/client/v1": client_resource,
"/_matrix/client/v3": client_resource,
"/_matrix/client/unstable": client_resource,
"/_matrix/client/v2_alpha": client_resource,
"/_matrix/client/versions": client_resource,
CLIENT_API_PREFIX: client_resource,
"/.well-known": well_known_resource(self),
"/_synapse/admin": AdminRestResource(self),
**build_synapse_client_resource_tree(self),