middleware.go 829 B

12345678910111213141516171819202122232425262728293031323334
  1. package controller
  2. import (
  3. "fmt"
  4. "github.com/gin-gonic/gin"
  5. "net/http"
  6. "trading-go/util"
  7. )
  8. func Cors(c *gin.Context) {
  9. method := c.Request.Method
  10. c.Header("Access-Control-Allow-Origin", c.GetHeader("Origin"))
  11. fmt.Println(c.GetHeader("Origin"))
  12. c.Header("Access-Control-Allow-Methods", "POST, GET, PUT, DELETE, OPTIONS")
  13. c.Header("Access-Control-Allow-Headers", "Content-Type, Content-Length, Token")
  14. c.Header("Access-Control-Expose-Headers", "Access-Control-Allow-Headers, Token")
  15. c.Header("Access-Control-Allow-Credentials", "true")
  16. if method == "OPTIONS" {
  17. c.AbortWithStatus(http.StatusNoContent)
  18. return
  19. }
  20. c.Next()
  21. }
  22. func VerifyToken(c *gin.Context) {
  23. var tokenString string
  24. tokenString = c.GetHeader("token")
  25. t, _, _ := util.ParseToken(tokenString)
  26. if t.Valid {
  27. c.Next()
  28. } else {
  29. c.Abort()
  30. }
  31. }