Просмотр исходного кода

Merge pull request #7516 from grafana/oauth-login-redirect

redirect user to requested url after login via oauth
Carl Bergquist 8 лет назад
Родитель
Сommit
73d441450b
1 измененных файлов с 7 добавлено и 0 удалено
  1. 7 0
      pkg/api/login_oauth.go

+ 7 - 0
pkg/api/login_oauth.go

@@ -10,6 +10,7 @@ import (
 	"io/ioutil"
 	"log"
 	"net/http"
+	"net/url"
 
 	"golang.org/x/net/context"
 	"golang.org/x/oauth2"
@@ -177,5 +178,11 @@ func OAuthLogin(ctx *middleware.Context) {
 
 	metrics.M_Api_Login_OAuth.Inc(1)
 
+	if redirectTo, _ := url.QueryUnescape(ctx.GetCookie("redirect_to")); len(redirectTo) > 0 {
+		ctx.SetCookie("redirect_to", "", -1, setting.AppSubUrl+"/")
+		ctx.Redirect(redirectTo)
+		return
+	}
+
 	ctx.Redirect(setting.AppSubUrl + "/")
 }