aboutsummaryrefslogtreecommitdiff
path: root/cmd/patreon-saasproxy/main.go
diff options
context:
space:
mode:
authorXe Iaso <me@xeiaso.net>2024-02-18 13:34:51 -0500
committerXe Iaso <me@xeiaso.net>2024-02-18 13:34:51 -0500
commit8d63fd1b351cf9ffd99555b21017cc503dd1d0fe (patch)
treee642b17c4a445006dc0e92025725ebf430f932b0 /cmd/patreon-saasproxy/main.go
parent5a4d6d92e9d3c1483104f2adcc9085b64bd1871f (diff)
downloadxesite-8d63fd1b351cf9ffd99555b21017cc503dd1d0fe.tar.xz
xesite-8d63fd1b351cf9ffd99555b21017cc503dd1d0fe.zip
add an external API
Signed-off-by: Xe Iaso <me@xeiaso.net>
Diffstat (limited to 'cmd/patreon-saasproxy/main.go')
-rw-r--r--cmd/patreon-saasproxy/main.go22
1 files changed, 2 insertions, 20 deletions
diff --git a/cmd/patreon-saasproxy/main.go b/cmd/patreon-saasproxy/main.go
index ef83302..6901ee3 100644
--- a/cmd/patreon-saasproxy/main.go
+++ b/cmd/patreon-saasproxy/main.go
@@ -3,7 +3,6 @@ package main
import (
"context"
"encoding/base64"
- "encoding/json"
"flag"
"log"
"log/slog"
@@ -14,6 +13,7 @@ import (
"github.com/facebookgo/flagenv"
_ "github.com/joho/godotenv/autoload"
+ "github.com/twitchtv/twirp"
"golang.org/x/oauth2"
"google.golang.org/protobuf/types/known/emptypb"
"google.golang.org/protobuf/types/known/timestamppb"
@@ -80,8 +80,6 @@ func main() {
cts: cts,
}
- http.HandleFunc("/give-token", s.GiveToken)
-
ph := adminpb.NewPatreonServer(s)
http.Handle(adminpb.PatreonPathPrefix, ph)
@@ -104,7 +102,7 @@ func (s *Server) GetToken(ctx context.Context, _ *emptypb.Empty) (*adminpb.Patre
token, err := s.cts.Token()
if err != nil {
slog.Error("token fetch failed", "err", err)
- return nil, err
+ return nil, twirp.InternalErrorWith(err)
}
return &adminpb.PatreonToken{
@@ -114,19 +112,3 @@ func (s *Server) GetToken(ctx context.Context, _ *emptypb.Empty) (*adminpb.Patre
Expiry: timestamppb.New(token.Expiry),
}, nil
}
-
-func (s *Server) GiveToken(w http.ResponseWriter, r *http.Request) {
- token, err := s.cts.Token()
- if err != nil {
- slog.Error("token fetch failed", "err", err)
- http.Error(w, "token fetch failed", http.StatusInternalServerError)
- return
- }
-
- w.Header().Set("Content-Type", "application/json")
-
- if err := json.NewEncoder(w).Encode(token); err != nil {
- slog.Error("token encode failed", "err", err)
- return
- }
-}