corrections typo parametre du flow oauth2
This commit is contained in:
@@ -6,11 +6,11 @@ type Oauth struct {
|
||||
ID int64 `db:"id"`
|
||||
AccessToken string `db:"access_token"`
|
||||
TokenType string `db:"token_type"`
|
||||
ExpireIN int `db:"expire_in"`
|
||||
ExpiresIN float64 `db:"expires_in"`
|
||||
RefreshToken string `db:"refresh_token"`
|
||||
}
|
||||
|
||||
func (o Oauth) String() string {
|
||||
return fmt.Sprintf("id=%v, accessToken=%v, tokenType=%v, expireIN=%v, refreshToken=%v",
|
||||
o.ID, o.AccessToken, o.TokenType, o.ExpireIN, o.RefreshToken)
|
||||
return fmt.Sprintf("id=%v, accessToken=%v, tokenType=%v, expiresIN=%v, refreshToken=%v",
|
||||
o.ID, o.AccessToken, o.TokenType, o.ExpiresIN, o.RefreshToken)
|
||||
}
|
||||
|
||||
@@ -106,7 +106,7 @@ func (s *server) handleLocal() http.HandlerFunc {
|
||||
ID: 0,
|
||||
AccessToken: at,
|
||||
TokenType: "bearer",
|
||||
ExpireIN: -1,
|
||||
ExpiresIN: -1,
|
||||
RefreshToken: "refresh",
|
||||
}
|
||||
err = s.store.CreateOauth(o)
|
||||
@@ -183,12 +183,13 @@ func (s *server) handleRedirect() http.HandlerFunc {
|
||||
fmt.Printf("erreur à la recupération des param (err=%v)", err)
|
||||
}
|
||||
jsonStr := constJSONToken(c, st, p)
|
||||
log.Printf("jsonStr %v", jsonStr)
|
||||
//log.Printf("jsonStr %v", jsonStr)
|
||||
apiURL := "https://api." + p.Domaine + "/auth/v1/oauth2.0/accessToken"
|
||||
data := url.Values{}
|
||||
log.Printf("data %v", data)
|
||||
data.Set("client_id", jsonStr.ClientID)
|
||||
data.Set("client_secret", jsonStr.ClientSecret)
|
||||
//"YNVZF88dD4vny59k")
|
||||
data.Set("grant_type", jsonStr.GrantType)
|
||||
data.Set("redirect_uri", jsonStr.RedirectURI)
|
||||
data.Set("code", jsonStr.Code)
|
||||
@@ -198,6 +199,7 @@ func (s *server) handleRedirect() http.HandlerFunc {
|
||||
if err != nil {
|
||||
log.Printf("erreur sur le post (err=%v)", err)
|
||||
}
|
||||
|
||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
||||
req.Header.Add("Content-Length", strconv.Itoa(len(data.Encode())))
|
||||
req.Header.Add("Accept", "application/json")
|
||||
@@ -224,13 +226,12 @@ func (s *server) handleRedirect() http.HandlerFunc {
|
||||
s.response(rw, r, nil, http.StatusBadGateway)
|
||||
return
|
||||
}
|
||||
|
||||
// Insert en base de données
|
||||
o := &model.Oauth{
|
||||
ID: 0,
|
||||
AccessToken: t["access_token"].(string),
|
||||
TokenType: t["type_token"].(string),
|
||||
ExpireIN: t["expire_in"].(int),
|
||||
TokenType: t["token_type"].(string),
|
||||
ExpiresIN: t["expires_in"].(float64),
|
||||
RefreshToken: t["refresh_token"].(string),
|
||||
}
|
||||
err = s.store.CreateOauth(o)
|
||||
@@ -305,7 +306,7 @@ func constJSONToken(code, state string, param *model.Param) JSONToken {
|
||||
ClientID: param.ClientID,
|
||||
ClientSecret: param.ClientSecret,
|
||||
GrantType: param.GrantType,
|
||||
RedirectURI: "http://localhost:8080/oauth/redirect%3Fstate=" + state,
|
||||
RedirectURI: "http://localhost:8080/oauth/redirect?state=" + state,
|
||||
Code: code,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ CREATE TABLE IF NOT EXISTS oauth
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
access_token TEXT,
|
||||
token_type TEXT,
|
||||
expire_in INTEGER,
|
||||
expires_in INTEGER,
|
||||
refresh_token TEXT
|
||||
)
|
||||
`
|
||||
@@ -77,8 +77,8 @@ func (store *DbStore) GetOauth(id int64) (*model.Oauth, error) {
|
||||
}
|
||||
|
||||
func (store *DbStore) CreateOauth(o *model.Oauth) error {
|
||||
res, err := store.db.Exec("INSERT INTO oauth (access_token, token_type, expire_in, refresh_token) VALUES (?, ?, ?, ?)",
|
||||
o.AccessToken, o.TokenType, o.ExpireIN, o.RefreshToken)
|
||||
res, err := store.db.Exec("INSERT INTO oauth (access_token, token_type, expires_in, refresh_token) VALUES (?, ?, ?, ?)",
|
||||
o.AccessToken, o.TokenType, o.ExpiresIN, o.RefreshToken)
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
Reference in New Issue
Block a user