[moin-review] 2021-09-08

김_리트리버·2021년 9월 8일
0

Facts

마케팅 부서가 쓰는 어드민에서 이벤트 공지의 시간을 설정하는 page 가 있는데 시간이 제대로 설정되지 않는다는 제보가 들어옴

확인해보니 시간을 설정하는 dateInput 이 브라우저의 dateInput 을 사용하고 있었음

브라우저의 date Input 은 UTC time 을 브라우저 timezone 에 맞춰서 알아서 변경해서 보여주는 특성이 있음

근데 기존에 code 는 서버에 보내기 전에 UTC 시간으로 변경해줘야 한다고 생각해서 KST 를 UST 로 변환하는 부분이 있었음

원래는 변경해주지 않아도 되는데 변경함으로써 예를 들어 분 단위만 수정했는데 9 시간 전으로 설정되는 bug 가 발생함

이에 서버에 보내기전에 UTC 시간으로 변환하는 부분을 제거함

근데 문제가 하나 더 있었음

브라우저에서 설정한 dateInput 의 value 는 시간 관련 국제 규격인 ISO 8601 string 형태가 아니었음

서버에 보내기 전에 date 객체에 내장도니 toISOString 메서드를 사용해서 변환하여 보내주어 해결하였음

Findings

브라우저의 dataInput 은 utc data 를 브라우저에 설정된 time-zone 으로 변환해서 보여준다.

data 는 그대로다

나라간에 시간을 표현하는 형식이 다르기 때문에 ISO 8601 를 사용하여 시간, 날짜 관련 데이터 통신시 통일함

Feelings

..!?

profile
web-developer

0개의 댓글