Have esi accept an optional http muxer

This commit is contained in:
2025-10-10 20:10:39 +02:00
parent 101138716f
commit f521c7e449
2 changed files with 97 additions and 51 deletions

31
main.go
View File

@@ -4,7 +4,7 @@ import (
"context"
"flag"
"fmt"
"net/http"
"os"
"strings"
@@ -33,7 +33,7 @@ func main() {
logger.Error("Failed to load options %v", err)
return
}
// Create SSO instance
sso, err := NewSSO(
options.ClientID,
@@ -45,7 +45,32 @@ func main() {
return
}
// Get token for character
// Setup HTTP server
mux := http.NewServeMux()
// Configure SSO to use existing muxer
sso.SetMuxer(mux)
// Add your own routes
mux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusOK)
w.Write([]byte("EVE PI Server Running"))
})
// Start server
server := &http.Server{
Addr: ":3000",
Handler: mux,
}
logger.Info("Starting web server on :3000")
go func() {
if err := server.ListenAndServe(); err != nil && err != http.ErrServerClosed {
logger.Error("Server failed: %v", err)
}
}()
// Get token for character (this will add callback route temporarily)
token, err := sso.GetToken(context.Background(), "PhatPhuckDave")
if err != nil {
logger.Error("Failed to get token %v", err)