26 lines
643 B
Go
26 lines
643 B
Go
package userApi
|
|
|
|
import (
|
|
"time"
|
|
)
|
|
|
|
type KeyPairResp struct {
|
|
KeyPair struct {
|
|
PrivateKey string `json:"privateKey"`
|
|
PublicKey string `json:"publicKey"`
|
|
} `json:"keyPair"`
|
|
PublicKeySignature string `json:"publicKeySignature"`
|
|
ExpiresAt time.Time `json:"expiresAt"`
|
|
RefreshedAfter time.Time `json:"refreshedAfter"`
|
|
}
|
|
|
|
func GetOrFetchKeyPair(accessToken string) (KeyPairResp, error) {
|
|
return fetchKeyPair(accessToken) // TODO: cache
|
|
}
|
|
|
|
func fetchKeyPair(accessToken string) (KeyPairResp, error) {
|
|
var keyPairResp KeyPairResp
|
|
err := post("/player/certificates", accessToken, &keyPairResp)
|
|
return keyPairResp, err
|
|
}
|