Go의 Gin 프레임워크에서는 multipart/form-data 요청을 사용하여 JSON 데이터와 이미지를 모두 수신할 수 있습니다. 방법은 다음과 같습니다.
type request struct { Avatar *multipart.FileHeader `form:"avatar" binding:"required"` Payload struct { Username string `json:"username" binding:"required,min=4,max=20"` Desc string `json:"description" binding:"required,max=100"` } `form:"payload" binding:"required"` }
이 코드에서 Avatar는 이미지 파일을 지정하고 Payload는 JSON 데이터를 정의합니다. 바인딩 태그는 데이터 유효성 검사에 사용됩니다.
요청 핸들러에서 c.ShouldBindWith()를 사용하여 수신 데이터를 요청 구조체에 바인딩합니다.
func (h *Handlers) UpdateProfile() gin.HandlerFunc { return func(c *gin.Context) { var u request if err := c.ShouldBindWith(&u, binding.FormMultipart); err != nil { c.AbortWithStatusJSON(http.StatusBadRequest, gin.H{"error": err}) return } // Process avatar and Payload data as needed... } }
요약하면 Go의 Gin 프레임워크에서 JSON 데이터와 이미지를 모두 수신하기 위해 multipart/form-data 요청을 사용할 수 있습니다. 요청 본문을 구문 분석하고 데이터에 액세스하려면 적절한 바인딩과 함께 c.ShouldBindWith()를 사용하세요.
위 내용은 Go의 Gin Framework에서 JSON 데이터와 이미지를 동시에 수신하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!