From 60ec4f0d6f5d0a2834c589b05a1859313dabf3fd Mon Sep 17 00:00:00 2001 From: luowei <36940986+ColdWaterLW@users.noreply.github.com> Date: Fri, 28 Mar 2025 13:51:42 +0800 Subject: [PATCH] Update test-ee.go --- test-ee.go | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/test-ee.go b/test-ee.go index fea6532..fa8e6ae 100644 --- a/test-ee.go +++ b/test-ee.go @@ -5,3 +5,33 @@ import "fmt" func test() { fmt.Println("testfffaa") } + +func (d *Oauth2ConfigurationUsecase) backendLogout(ctx context.Context, configuration *Oauth2Configuration, idToken string) error { + logoutUrl, err := url.Parse(configuration.ServerLogoutUrl) + if err != nil { + return fmt.Errorf("parse logout url failed: %v", err) + } + query := logoutUrl.Query() + for key := range query { + val := query.Get(key) + if val == userVariableIdToken { + query.Set(key, idToken) + } else if val == userVariableSqleUrl { + query.Del(key) + } + } + logoutUrl.RawQuery = query.Encode() + logoutUrlStr := logoutUrl.String() + d.log.Infof("backendLogout url: %s", logoutUrlStr) + + client := &http.Client{Timeout: time.Minute} + resp, err := client.Get(logoutUrlStr) + if err != nil { + return fmt.Errorf("request logout url failed: %v", err) + } + defer resp.Body.Close() + if resp.StatusCode != http.StatusOK { + return fmt.Errorf("request logout url resp Status: %v", resp.Status) + } + return nil +}