UPDATE: Outh2 google

This commit is contained in:
2026-03-30 16:13:00 +07:00
parent d3f128b284
commit 0410ae508e
21 changed files with 714 additions and 68 deletions

14
pkg/constants/provider.go Normal file
View File

@@ -0,0 +1,14 @@
package constants
type ProviderType string
const (
GoogleProvider ProviderType = "google"
GithubProvider ProviderType = "github"
FacebookProvider ProviderType = "facebook"
LocalProvider ProviderType = "local"
)
func (p ProviderType) String() string {
return string(p)
}

View File

@@ -2,6 +2,7 @@ package log
import (
"os"
"time"
"github.com/rs/zerolog"
"github.com/rs/zerolog/log"
@@ -11,7 +12,8 @@ func init() {
output := zerolog.ConsoleWriter{
Out: os.Stdout,
PartsOrder: []string{"level", "message"},
TimeFormat: time.RFC3339,
}
log.Logger = zerolog.New(output).With().Logger()
log.Logger = zerolog.New(output).With().Timestamp().Logger()
}

38
pkg/oauth/google.go Normal file
View File

@@ -0,0 +1,38 @@
package oauth
import (
"fmt"
"history-api/pkg/config"
"golang.org/x/oauth2"
"golang.org/x/oauth2/google"
)
func NewGoogleProvider() (*oauth2.Config, error) {
userGoogle, err := config.GetConfig("GOOGLE_CLIENT_ID")
if err != nil {
return nil, err
}
passGoogle, err := config.GetConfig("GOOGLE_CLIENT_SECRET")
if err != nil {
return nil, err
}
redirectURL, err := config.GetConfig("GOOGLE_REDIRECT_URL")
if err != nil {
return nil, err
}
return &oauth2.Config{
RedirectURL: redirectURL,
ClientID: fmt.Sprintf("%s.apps.googleusercontent.com", userGoogle),
ClientSecret: passGoogle,
Scopes: []string{
"openid",
"email",
"profile",
},
Endpoint: google.Endpoint,
}, nil
}