[Go] gin의 json 형식의 Post 요청은 타임형 프로젝트를 받아들일 수 있습니까

2478 단어 Gogintech

개요


gin/golang gin-gonic does not parse time.Time properly for unix json?의 Stackoverflow에 GO의 프레임워크gin에 json의 Post 요청에서 날짜 형식을 받아들일 수 없는 항목이 기록되어 있습니다.form으로 이해할 수 있지만 json에서 받고 싶다면여기.의 issue 댓글에 unmarrshal용 유형을 따로 준비해야 한다고 적혀 있다.
다만, 보도가 좀 낡았기 때문에 이번에는 2022년 3월 버전v1.7.7에 적어야겠다.

검증 결과

v1.7.7라면 타임형에 따라 json을 수신할 수 있습니다.
다음과 같이 요청자는 ISO8601 형식으로 날짜를 포함하는 json(날짜 항목은sample_date을 던졌다.또한 ISO8601 형식에 대한 자세한 내용은 날짜와 시간을 이해하는 국제 표준[ISO8601]의 기사를 참조하십시오.
{
  "title":"sampleTitle",
  "description":"sampleDetail",
  "sample_date":"2022-03-30T14:11:00.000Z"
}
수락자의 gin에서 다음과 같이 struct를 정의하고 Bind를 진행하면 OK.
type SamplePostRequest struct {
	Title       string    `json:"title" bson:"title"`
	Description string    `json:"description" bson:"description"`
	SampletDate time.Time `json:"sample_date" bson:"sample_date"`
}
또 어떤 버전이 OK인지 따라잡을 수는 없지만 여기. 리뷰를 보면 2021년 2월 이후 버전은 수정됐을 것 같다.

좋은 웹페이지 즐겨찾기