Handle trailing slash on uris

Co-authored-by: Kristoffer Dalby <kradalby@kradalby.no>
This commit is contained in:
unreality 2021-10-08 15:26:31 +08:00 committed by GitHub
parent c487591437
commit 35795c79c3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 5 deletions

8
api.go
View File

@ -135,10 +135,10 @@ func (h *Headscale) RegistrationHandler(c *gin.Context) {
Msg("Not registered and not NodeKey rotation. Sending a authurl to register")
if h.cfg.OIDCIssuer != "" {
resp.AuthURL = fmt.Sprintf("%s/oidc/register/%s", h.cfg.ServerURL, mKey.HexString())
resp.AuthURL = fmt.Sprintf("%s/oidc/register/%s", strings.TrimSuffix(h.cfg.ServerURL, "/"), mKey.HexString())
} else {
resp.AuthURL = fmt.Sprintf("%s/register?key=%s",
h.cfg.ServerURL, mKey.HexString())
strings.TrimSuffix(h.cfg.ServerURL, "/"), mKey.HexString())
}
respBody, err := encode(resp, &mKey, h.privateKey)
if err != nil {
@ -205,10 +205,10 @@ func (h *Headscale) RegistrationHandler(c *gin.Context) {
Str("machine", m.Name).
Msg("The node is sending us a new NodeKey, sending auth url")
if h.cfg.OIDCIssuer != "" {
resp.AuthURL = fmt.Sprintf("%s/oidc/register/%s", h.cfg.ServerURL, mKey.HexString())
resp.AuthURL = fmt.Sprintf("%s/oidc/register/%s", strings.TrimSuffix(h.cfg.ServerURL, "/"), mKey.HexString())
} else {
resp.AuthURL = fmt.Sprintf("%s/register?key=%s",
h.cfg.ServerURL, mKey.HexString())
strings.TrimSuffix(h.cfg.ServerURL, "/"), mKey.HexString())
}
respBody, err := encode(resp, &mKey, h.privateKey)
if err != nil {

View File

@ -53,7 +53,7 @@ func (h *Headscale) RegisterOIDC(c *gin.Context) {
ClientID: h.cfg.OIDCClientID,
ClientSecret: h.cfg.OIDCClientSecret,
Endpoint: oidcProvider.Endpoint(),
RedirectURL: fmt.Sprintf("%s/oidc/callback", h.cfg.ServerURL),
RedirectURL: fmt.Sprintf("%s/oidc/callback", strings.TrimSuffix(h.cfg.ServerURL, "/")),
Scopes: []string{oidc.ScopeOpenID, "profile", "email"},
}