8 changed files with 82 additions and 7 deletions
-
13api/v1/users/users.go
-
2cmd/root.go
-
9cmd/server/server.go
-
25lib/common/common.go
-
1lib/config/config.go
-
26lib/middlewares/requestid.go
-
12lib/middlewares/versionheader.go
-
1main.go
@ -0,0 +1,26 @@ |
|||
package middlewares |
|||
|
|||
import ( |
|||
"fmt" |
|||
|
|||
"git.devices.local/mawas/golang-api-skeleton/lib/common" |
|||
"github.com/gin-gonic/gin" |
|||
"github.com/spf13/viper" |
|||
) |
|||
|
|||
func RequestID() gin.HandlerFunc { |
|||
return func(c *gin.Context) { |
|||
requestID := c.Request.Header.Get(viper.GetString("application.requestIDHeaderName")) |
|||
if requestID == "" { |
|||
id, err := common.NewGUID() |
|||
if err != nil { |
|||
// FIXME log request id creation error
|
|||
fmt.Println("ERROR request id creation in middleware") |
|||
} |
|||
requestID = id.String() |
|||
} |
|||
c.Set("requestID", requestID) |
|||
c.Writer.Header().Set("X-Request-Id", requestID) |
|||
c.Next() |
|||
} |
|||
} |
|||
@ -0,0 +1,12 @@ |
|||
package middlewares |
|||
|
|||
import ( |
|||
"github.com/gin-gonic/gin" |
|||
) |
|||
|
|||
func VersionHeader(version string) gin.HandlerFunc { |
|||
return func(c *gin.Context) { |
|||
c.Writer.Header().Set("X-Api-Version", version) |
|||
c.Next() |
|||
} |
|||
} |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue