| 12345678910111213141516171819202122232425262728293031323334353637 | package middlewareimport (	"bytes"	"encoding/json"	"io"	"net/http"	"ulink-admin/frame"	"ulink-admin/utils")const FAST_BODY_COLNUM = "fast_body_colnum"// 请求处理func Request() func(c *frame.Context) {	return func(c *frame.Context) {		if c.Request.Method == http.MethodPut || c.Request.Method == http.MethodPost {			var bodyBytes []byte			if c.Request.Body != nil {				bodyBytes, _ = io.ReadAll(c.Request.Body)			}			var body map[string]interface{}			json.Unmarshal(bodyBytes, &body)			keys := make([]string, len(body))			i := 0			for k, _ := range body {				keys[i] = utils.Camel2Case(k)				i++			}			c.Set(FAST_BODY_COLNUM, keys)			c.Request.Body = io.NopCloser(bytes.NewBuffer(bodyBytes))		}		// 处理请求		c.Next()	}}
 |