mirror of
https://github.com/usememos/memos.git
synced 2025-01-01 01:51:46 +08:00
chore: update api middlewares
This commit is contained in:
parent
3a1f82effa
commit
d5c1706e9c
1 changed files with 16 additions and 9 deletions
|
@ -67,17 +67,24 @@ func NewServer(ctx context.Context, profile *profile.Profile, store *store.Store
|
||||||
|
|
||||||
e.Use(middleware.CORS())
|
e.Use(middleware.CORS())
|
||||||
|
|
||||||
e.Use(middleware.SecureWithConfig(middleware.SecureConfig{
|
e.Use(middleware.TimeoutWithConfig(middleware.TimeoutConfig{
|
||||||
Skipper: defaultGetRequestSkipper,
|
Timeout: 30 * time.Second,
|
||||||
XSSProtection: "1; mode=block",
|
|
||||||
ContentTypeNosniff: "nosniff",
|
|
||||||
XFrameOptions: "SAMEORIGIN",
|
|
||||||
HSTSPreloadEnabled: false,
|
|
||||||
}))
|
}))
|
||||||
|
|
||||||
e.Use(middleware.TimeoutWithConfig(middleware.TimeoutConfig{
|
e.Use(middleware.RateLimiterWithConfig(middleware.RateLimiterConfig{
|
||||||
ErrorMessage: "Request timeout",
|
Store: middleware.NewRateLimiterMemoryStoreWithConfig(
|
||||||
Timeout: 30 * time.Second,
|
middleware.RateLimiterMemoryStoreConfig{Rate: 30, Burst: 60, ExpiresIn: 3 * time.Minute},
|
||||||
|
),
|
||||||
|
IdentifierExtractor: func(ctx echo.Context) (string, error) {
|
||||||
|
id := ctx.RealIP()
|
||||||
|
return id, nil
|
||||||
|
},
|
||||||
|
ErrorHandler: func(context echo.Context, err error) error {
|
||||||
|
return context.JSON(http.StatusForbidden, nil)
|
||||||
|
},
|
||||||
|
DenyHandler: func(context echo.Context, identifier string, err error) error {
|
||||||
|
return context.JSON(http.StatusTooManyRequests, nil)
|
||||||
|
},
|
||||||
}))
|
}))
|
||||||
|
|
||||||
serverID, err := s.getSystemServerID(ctx)
|
serverID, err := s.getSystemServerID(ctx)
|
||||||
|
|
Loading…
Reference in a new issue