From 1f72db8efa9027f87fbce77c8b17be1b3e904f55 Mon Sep 17 00:00:00 2001 From: Yasuhiro ABE Date: Tue, 23 Apr 2024 16:27:44 +0900 Subject: [PATCH] Fixed the encoded redirect_uri issue. Signed-off-by: Yasuhiro ABE --- server/handlers.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/server/handlers.go b/server/handlers.go index ccd534d9..85335972 100644 --- a/server/handlers.go +++ b/server/handlers.go @@ -880,7 +880,11 @@ func (s *Server) calculateCodeChallenge(codeVerifier, codeChallengeMethod string func (s *Server) handleAuthCode(w http.ResponseWriter, r *http.Request, client storage.Client) { ctx := r.Context() code := r.PostFormValue("code") - redirectURI := r.PostFormValue("redirect_uri") + redirectURI, err := url.QueryUnescape(r.PostFormValue("redirect_uri")) + if err != nil { + s.tokenErrHelper(w, errInvalidRequest, "No redirect_uri provided.", http.StatusBadRequest) + return + } if code == "" { s.tokenErrHelper(w, errInvalidRequest, `Required param: code.`, http.StatusBadRequest)