-
Gin middleware/handler to dump header/body of request and response .
-
Very helpful for debugging your applications.
-
More beautiful output than httputil.DumpXXX()
- application/json
- application/x-www-form-urlencoded
- text/xml
- application/xml
- text/plain
All:
func main() {
router := gin.Default()
//use Dump() default will print on stdout
router.Use(gindump.Dump())
//or use DumpWithOptions() with more options
router.Use(gindump.DumpWithOptions(true, true, false, true, false, func(dumpStr string) {
fmt.Println(dumpStr)
}))
router.Post("/",myHandler)
...
router.Run()
}
Group:
func main() {
router := gin.Default()
dumpGroup := router.Group("/group")
//use Dump() default will print on stdout
dumpGroup.Use(gindump.Dump())
//or use DumpWithOptions() with more options
dumpGroup.Use(gindump.DumpWithOptions(true, true, false, true, false, func(dumpStr string) {
fmt.Println(dumpStr)
}))
dumpGroup.Post("/",myHandler)
...
router.Run()
}
EndPoint:
func main() {
router := gin.Default()
//use Dump() default will print on stdout
router.Post("/",gindump.Dump(),myHandler)
//or use DumpWithOptions() with more options
router.Post("/",gindump.DumpWithOptions(true, true, false, true, false, func(dumpStr string) {
fmt.Println(dumpStr)
}),myHandler)
...
router.Run()
}
[GIN-dump]:
Request-Header:
{
"Content-Type": [
"application/x-www-form-urlencoded"
]
}
Request-Body:
{
"bar": [
"baz"
],
"foo": [
"bar",
"bar2"
]
}
Response-Header:
{
"Content-Type": [
"application/json; charset=utf-8"
]
}
Response-Body:
{
"data": {
"addr": "tpkeeper@qq.com",
"name": "jfise"
},
"ok": true
}