UPDATE: Outh2 google
This commit is contained in:
14
pkg/constants/provider.go
Normal file
14
pkg/constants/provider.go
Normal 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)
|
||||
}
|
||||
@@ -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
38
pkg/oauth/google.go
Normal 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
|
||||
}
|
||||
Reference in New Issue
Block a user