all repos

rss-tools @ 01ec2af

get rss feed from sources that(i need and) dont provide one
2 files changed, 5 insertions(+), 5 deletions(-)
http: setup auth middleware only when token is provided
Author: Oleksandr Smirnov olexsmir@gmail.com
Committed at: 2026-04-23 14:57:37 +0300
Authored at: 2026-04-23 14:55:27 +0300
Change ID: muunlwwvvrkrtyrmstwnmvpwytlrnvrt
Parent: 610059f
M app/app.go
···
        5
        5
         	"fmt"

      
        6
        6
         	"log/slog"

      
        7
        7
         	"net/http"

      
        
        8
        +	"strings"

      
        8
        9
         	"sync"

      
        9
        10
         	"time"

      
        10
        11
         

      ···
        86
        87
         

      
        87
        88
         	// http server

      
        88
        89
         	handler := a.recoverMiddleware(a.mux)

      
        89
        
        -	handler = a.authMiddleware(handler)

      
        90
        90
         	handler = a.loggingMiddleware(handler)

      
        
        91
        +	if strings.TrimSpace(a.Config.AuthToken) != "" {

      
        
        92
        +		handler = a.authMiddleware(handler)

      
        
        93
        +	}

      
        
        94
        +

      
        91
        95
         	httpSrv := &http.Server{

      
        92
        96
         		Addr:    fmt.Sprintf(":%d", a.Config.Port), // fixme

      
        93
        97
         		Handler: handler,

      
M app/http.go
···
        35
        35
         }

      
        36
        36
         

      
        37
        37
         func (a *App) authMiddleware(next http.Handler) http.Handler {

      
        38
        
        -	if a.Config == nil || strings.TrimSpace(a.Config.AuthToken) == "" {

      
        39
        
        -		return next

      
        40
        
        -	}

      
        41
        
        -

      
        42
        38
         	expected := strings.TrimSpace(a.Config.AuthToken)

      
        43
        39
         	return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {

      
        44
        40
         		queryToken := strings.TrimSpace(r.URL.Query().Get("token"))