123456789101112131415161718192021222324252627282930313233343536 |
- package api
- import (
- "fmt"
- "net/http"
- "os"
- "github.com/casdoor/casdoor-go-sdk/casdoorsdk"
- "github.com/gin-gonic/gin"
- )
- func callback(c *gin.Context, apictx *ApiSession) (interface{}, error) {
- authConf := apictx.Svc.Conf.Auth
- pemByte, err := os.ReadFile(authConf.Certificate)
- if err != nil {
- return nil, err
- }
- casdoorsdk.InitConfig(authConf.Endpoint, authConf.ClientId, authConf.ClientSecret, string(pemByte), authConf.OrganizationName, authConf.ApplicationName)
- token, err := casdoorsdk.GetOAuthToken(c.Query("code"), c.Query("state"))
- if err != nil {
- fmt.Println(err)
- }
- fmt.Println(token.AccessToken)
- claims, err := casdoorsdk.ParseJwtToken(token.AccessToken)
- if err != nil {
- fmt.Println(err)
- }
- fmt.Println(claims)
- c.Redirect(http.StatusFound, "https://auth.3dqueen.cloud")
-
- return nil, nil
- }
|