From a9e9bf47c0a69549725bd37c420684f1693a2a66 Mon Sep 17 00:00:00 2001 From: Travis Ralston <travpc@gmail.com> Date: Sun, 12 Nov 2017 22:41:00 -0700 Subject: [PATCH] Listen to the spec endpoints, not fake ones --- README.md | 2 +- .../turt2live/matrix-media-repo/media_repo.go | 15 +++++++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index f0bf4dd9..be35cd2f 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,7 @@ location /_matrix { } # Redirect all media endpoints to the media-repo -location /_matrix/client/r0/media { +location /_matrix/media { proxy_read_timeout 60s; proxy_set_header Host $host; # Make sure this matches your homeserver in media-repo.yaml proxy_set_header X-Real-IP $remote_addr; diff --git a/src/github.com/turt2live/matrix-media-repo/media_repo.go b/src/github.com/turt2live/matrix-media-repo/media_repo.go index c8f905a7..d5d369cc 100644 --- a/src/github.com/turt2live/matrix-media-repo/media_repo.go +++ b/src/github.com/turt2live/matrix-media-repo/media_repo.go @@ -47,10 +47,17 @@ func main() { downloadHandler := Handler{r0.DownloadMedia, hOpts} thumbnailHandler := Handler{r0.ThumbnailMedia, hOpts} - rtr.Handle("/_matrix/client/r0/media/upload", uploadHandler).Methods("POST") - rtr.Handle("/_matrix/client/r0/media/download/{server:[a-zA-Z0-9.:-_]+}/{mediaId:[a-zA-Z0-9]+}", downloadHandler).Methods("GET") - rtr.Handle("/_matrix/client/r0/media/download/{server:[a-zA-Z0-9.:-_]+}/{mediaId:[a-zA-Z0-9]+}/{filename:[a-zA-Z0-9._-]+}", downloadHandler).Methods("GET") - rtr.Handle("/_matrix/client/r0/media/thumbnail/{server:[a-zA-Z0-9.:-_]+}/{mediaId:[a-zA-Z0-9]+}", thumbnailHandler).Methods("GET") + // r0 endpoints + rtr.Handle("/_matrix/media/r0/upload", uploadHandler).Methods("POST") + rtr.Handle("/_matrix/media/r0/download/{server:[a-zA-Z0-9.:-_]+}/{mediaId:[a-zA-Z0-9]+}", downloadHandler).Methods("GET") + rtr.Handle("/_matrix/media/r0/download/{server:[a-zA-Z0-9.:-_]+}/{mediaId:[a-zA-Z0-9]+}/{filename:[a-zA-Z0-9._-]+}", downloadHandler).Methods("GET") + rtr.Handle("/_matrix/media/r0/thumbnail/{server:[a-zA-Z0-9.:-_]+}/{mediaId:[a-zA-Z0-9]+}", thumbnailHandler).Methods("GET") + + // v1 endpoints (legacy) + rtr.Handle("/_matrix/media/v1/upload", uploadHandler).Methods("POST") + rtr.Handle("/_matrix/media/v1/download/{server:[a-zA-Z0-9.:-_]+}/{mediaId:[a-zA-Z0-9]+}", downloadHandler).Methods("GET") + rtr.Handle("/_matrix/media/v1/download/{server:[a-zA-Z0-9.:-_]+}/{mediaId:[a-zA-Z0-9]+}/{filename:[a-zA-Z0-9._-]+}", downloadHandler).Methods("GET") + rtr.Handle("/_matrix/media/v1/thumbnail/{server:[a-zA-Z0-9.:-_]+}/{mediaId:[a-zA-Z0-9]+}", thumbnailHandler).Methods("GET") http.Handle("/", rtr) http.ListenAndServe(":8000", nil) -- GitLab