22 lines
606 B
Go
22 lines
606 B
Go
package middleware
|
|
|
|
import (
|
|
"github.com/gofiber/fiber/v3"
|
|
)
|
|
|
|
// CORS 跨域中间件
|
|
func CORS() fiber.Handler {
|
|
return func(c fiber.Ctx) error {
|
|
c.Set("Access-Control-Allow-Origin", "*")
|
|
c.Set("Access-Control-Allow-Credentials", "true")
|
|
c.Set("Access-Control-Allow-Headers", "Content-Type, Content-Length, Accept-Encoding, X-CSRF-Token, Authorization, accept, origin, Cache-Control, X-Requested-With")
|
|
c.Set("Access-Control-Allow-Methods", "POST, OPTIONS, GET, PUT, DELETE, PATCH, HEAD")
|
|
|
|
if c.Method() == "OPTIONS" {
|
|
return c.SendStatus(fiber.StatusNoContent)
|
|
}
|
|
|
|
return c.Next()
|
|
}
|
|
}
|