Ajout du paramètre base url

This commit is contained in:
Valentin Carroy 2024-09-11 12:09:43 +02:00
parent ca1d3810a8
commit 1139bfe73f
3 changed files with 7 additions and 3 deletions

View File

@ -44,6 +44,7 @@ $ ALTCHA_HMAC_KEY="CLÉ HMAC" bin/altcha verify [CHALLENGE] [SALT] [SIGNATURE] [
## Variables d'environement ## Variables d'environement
| Nom | Description | Valeur par défaut | Requis | | Nom | Description | Valeur par défaut | Requis |
|---------------------|------------------------------------------------------------------------------|--------------------------|--------| |---------------------|------------------------------------------------------------------------------|--------------------------|--------|
| ALTCHA_BASE_URL | Url de base du service | | Non |
| ALTCHA_PORT | Port d'écoute du serveur | 3333 | Non | | ALTCHA_PORT | Port d'écoute du serveur | 3333 | Non |
| ALTCHA_HMAC_KEY | Clé d'encodage des signatures | | Oui | | ALTCHA_HMAC_KEY | Clé d'encodage des signatures | | Oui |
| ALTCHA_MAX_NUMBER | Nombre d'itération maximum pour résoudre le challenge (défini la difficulté) | 1000000 | Non | | ALTCHA_MAX_NUMBER | Nombre d'itération maximum pour résoudre le challenge (défini la difficulté) | 1000000 | Non |

View File

@ -17,6 +17,7 @@ import (
) )
type Server struct { type Server struct {
baseUrl string
port string port string
client client.Client client client.Client
} }
@ -32,9 +33,9 @@ func (s *Server) Run(ctx context.Context) {
r.Get("/", func(w http.ResponseWriter, r *http.Request) { r.Get("/", func(w http.ResponseWriter, r *http.Request) {
w.Write([]byte("root.")) w.Write([]byte("root."))
}) })
r.Get("/request", s.requestHandler) r.Get(s.baseUrl+"/request", s.requestHandler)
r.Get("/verify", s.submitHandler) r.Get(s.baseUrl+"/verify", s.submitHandler)
r.Get("/verify-spam-filter", s.submitSpamFilterHandler) r.Get(s.baseUrl+"/verify-spam-filter", s.submitSpamFilterHandler)
logger.Info(ctx, "altcha server listening on port "+s.port) logger.Info(ctx, "altcha server listening on port "+s.port)
if err := http.ListenAndServe(":"+s.port, r); err != nil { if err := http.ListenAndServe(":"+s.port, r); err != nil {
@ -171,6 +172,7 @@ func NewServer(cfg config.Config) *Server {
client := *client.NewClient(cfg.HmacKey, cfg.MaxNumber, cfg.Algorithm, cfg.Salt, cfg.Expire, cfg.CheckExpire) client := *client.NewClient(cfg.HmacKey, cfg.MaxNumber, cfg.Algorithm, cfg.Salt, cfg.Expire, cfg.CheckExpire)
return &Server { return &Server {
baseUrl: cfg.BaseUrl,
port: cfg.Port, port: cfg.Port,
client: client, client: client,
} }

View File

@ -1,6 +1,7 @@
package config package config
type Config struct { type Config struct {
BaseUrl string `env:"ALTCHA_BASE_URL" envDefault:""`
Port string `env:"ALTCHA_PORT" envDefault:"3333"` Port string `env:"ALTCHA_PORT" envDefault:"3333"`
HmacKey string `env:"ALTCHA_HMAC_KEY"` HmacKey string `env:"ALTCHA_HMAC_KEY"`
MaxNumber int64 `env:"ALTCHA_MAX_NUMBER" envDefault:"1000000"` MaxNumber int64 `env:"ALTCHA_MAX_NUMBER" envDefault:"1000000"`