mirror of
https://github.com/labstack/echo.git
synced 2025-01-12 01:22:21 +02:00
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,
|
||
|
}
|
||
|
```
|