You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

24 lines
569 B

package middleware
import (
"github.com/gogf/gf/v2/net/ghttp"
)
// CustomResponseMiddleware 自定义响应中间件,处理嵌套问题
func CustomResponseMiddleware(r *ghttp.Request) {
// 执行下一个中间件或处理程序
r.Middleware.Next()
// 获取处理程序的响应内容
response := r.GetHandlerResponse()
if response == nil {
// 如果没有响应内容,则直接返回
return
}
// 清空原始响应缓冲区,避免重复输出
r.Response.ClearBuffer()
// 自定义返回格式,避免嵌套
r.Response.WriteJson(response)
}