跨域中间件
/lib/middleware/crossorigin_mv.go
package middleware
import (
"github.com/gin-gonic/gin"
"net/http"
)
/**
* 跨域设置
*/
func CrossOriginMiddleware() gin.HandlerFunc {
return func(context *gin.Context) {
method := context.Request.Method
context.Header("Access-Control-Allow-Origin", "*")
context.Header("Access-Control-Allow-Headers", "Content-Type,AccessToken,X-CSRF-Token, Authorization, Token")
context.Header("Access-Control-Allow-Methods", "POST, GET, OPTIONS")
context.Header("Access-Control-Expose-Headers", "Content-Length, Access-Control-Allow-Origin, Access-Control-Allow-Headers, Content-Type")
context.Header("Access-Control-Allow-Credentials", "true")
if method == "OPTIONS" {
context.AbortWithStatus(http.StatusNoContent)
}
context.Next()
}
}
使用中间件
ginServ := gin.Default()
ginServ.Use(middleware.CrossOriginMiddleware())