mirror of
https://github.com/zap-proto/fiber.git
synced 2026-10-30 15:06:23 +00:00
1.4 KiB
1.4 KiB
id
| id |
|---|
| rewrite |
Rewrite
The Rewrite middleware remaps the request path using custom rules, helping with backward compatibility and cleaner URLs.
Signatures
func New(config ...Config) fiber.Handler
Config
| Property | Type | Description | Default |
|---|---|---|---|
| Next | func(fiber.Ctx) bool |
Skip when function returns true. |
nil |
| Rules | map[string]string |
Map paths to new values; use $1, $2 for wildcard captures. |
(Required) |
:::note Rules are stored in a map, so iteration order is undefined. Avoid overlapping patterns if precedence matters. :::
Examples
package main
import (
"github.com/gofiber/fiber/v3"
"github.com/gofiber/fiber/v3/middleware/rewrite"
)
func main() {
app := fiber.New()
app.Use(rewrite.New(rewrite.Config{
Rules: map[string]string{
"/old": "/new",
"/old/*": "/new/$1",
},
}))
app.Get("/new", func(c fiber.Ctx) error {
return c.SendString("Hello, World!")
})
app.Get("/new/*", func(c fiber.Ctx) error {
return c.SendString("Wildcard: " + c.Params("*"))
})
app.Listen(":3000")
}
Test
curl http://localhost:3000/old
curl http://localhost:3000/old/hello