mirror of
https://github.com/labstack/echo.git
synced 2025-01-12 01:22:21 +02:00
f4b0004d2b
Signed-off-by: Vishal Rana <vr@labstack.com>
65 lines
1.2 KiB
Markdown
65 lines
1.2 KiB
Markdown
+++
|
|
title = "TrailingSlash Middleware"
|
|
description = "Trailing slash middleware for Echo"
|
|
[menu.side]
|
|
name = "TrailingSlash"
|
|
parent = "middleware"
|
|
weight = 5
|
|
+++
|
|
|
|
## AddTrailingSlash Middleware
|
|
|
|
AddTrailingSlash middleware adds a trailing slash to the request URI.
|
|
|
|
*Usage*
|
|
|
|
```go
|
|
e := echo.New()
|
|
e.Pre(middleware.AddTrailingSlash())
|
|
```
|
|
|
|
## RemoveTrailingSlash Middleware
|
|
|
|
RemoveTrailingSlash middleware removes a trailing slash from the request URI.
|
|
|
|
*Usage*
|
|
|
|
```go
|
|
e := echo.New()
|
|
e.Pre(middleware.RemoveTrailingSlash())
|
|
```
|
|
|
|
### Custom Configuration
|
|
|
|
*Usage*
|
|
|
|
```go
|
|
e := echo.New()
|
|
e.Use(middleware.AddTrailingSlashWithConfig(middleware.TrailingSlashConfig{
|
|
RedirectCode: http.StatusMovedPermanently,
|
|
}))
|
|
```
|
|
|
|
Example above will add a trailing slash to the request URI and redirect with `308 - StatusMovedPermanently`.
|
|
|
|
### Configuration
|
|
|
|
```go
|
|
TrailingSlashConfig struct {
|
|
// Skipper defines a function to skip middleware.
|
|
Skipper Skipper
|
|
|
|
// Status code to be used when redirecting the request.
|
|
// Optional, but when provided the request is redirected using this code.
|
|
RedirectCode int `json:"redirect_code"`
|
|
}
|
|
```
|
|
|
|
*Default Configuration*
|
|
|
|
```go
|
|
DefaultTrailingSlashConfig = TrailingSlashConfig{
|
|
Skipper: defaultSkipper,
|
|
}
|
|
```
|