Archived
Template
1
0

Adds a cache max age parameter and fixes cache parameter for main.js (#12)

Fixed throttling
This commit is contained in:
Markus Tenghamn
2022-01-09 12:13:09 +01:00
committed by GitHub
parent 559059f54e
commit 5d01717111
7 changed files with 26 additions and 16 deletions

View File

@ -1,10 +1,13 @@
package middleware
import "github.com/gin-gonic/gin"
import (
"fmt"
"github.com/gin-gonic/gin"
)
func Cache() gin.HandlerFunc {
func Cache(maxAge int) gin.HandlerFunc {
return func(c *gin.Context) {
c.Header("Cache-Control", "public, max-age=60")
c.Header("Cache-Control", fmt.Sprintf("public, max-age=%d", maxAge))
c.Next()
}
}

View File

@ -5,21 +5,15 @@ import (
"github.com/ulule/limiter/v3"
middlewareGin "github.com/ulule/limiter/v3/drivers/middleware/gin"
"github.com/ulule/limiter/v3/drivers/store/memory"
"log"
"time"
)
func Throttle(limit int) gin.HandlerFunc {
// Define a limit rate to 3 requests per minute.
rate, err := limiter.NewRateFromFormatted("5-M")
if err != nil {
log.Fatal(err)
}
store := memory.NewStore()
if err != nil {
log.Fatal(err)
}
// Create a new middleware with the limiter instance.
return middlewareGin.NewMiddleware(limiter.New(store, rate))
return middlewareGin.NewMiddleware(limiter.New(store, limiter.Rate{
Period: time.Minute,
Limit: int64(limit),
}))
}