mirror of
https://github.com/QuantumNous/new-api.git
synced 2026-04-29 04:48:38 +00:00
fix: improve multipart form data handling in gin context
- Added caching for the original Content-Type header in the parseMultipartFormData function. - This change ensures that the Content-Type is retrieved from the context if previously set, enhancing performance and consistency.
This commit is contained in:
@@ -303,7 +303,13 @@ func parseFormData(data []byte, v any) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func parseMultipartFormData(c *gin.Context, data []byte, v any) error {
|
func parseMultipartFormData(c *gin.Context, data []byte, v any) error {
|
||||||
contentType := c.Request.Header.Get("Content-Type")
|
var contentType string
|
||||||
|
if saved, ok := c.Get("_original_multipart_ct"); ok {
|
||||||
|
contentType = saved.(string)
|
||||||
|
} else {
|
||||||
|
contentType = c.Request.Header.Get("Content-Type")
|
||||||
|
c.Set("_original_multipart_ct", contentType)
|
||||||
|
}
|
||||||
boundary, err := parseBoundary(contentType)
|
boundary, err := parseBoundary(contentType)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if errors.Is(err, errBoundaryNotFound) {
|
if errors.Is(err, errBoundaryNotFound) {
|
||||||
|
|||||||
Reference in New Issue
Block a user