Я пытаюсь служить автоматическому timestamp
inserted_at
полем как json.Phoenix default json date разбора по-разному в Chrome/Firefox
Проблема в том, что Chrome и Firefox расходятся в том, как они разбирают то, что они отправляют. Проблема заключается в том, что по умолчанию Phoenix предлагает что-то вроде "2017-01-12T19:49:000"
. Это анализируется UTC Firefox и IE, а Chrome возвращает это преобразование в локальное время. Добавьте Z ("2017-01-12T19:49:000Z"
) и дайте местное время.
В результате я превратил свой код для чтения:
def render("message.json", %{message: message}) do
%{id: message.id,
content: message.content,
date: Ecto.DateTime.to_iso8601(message.inserted_at)<>"Z"}
end
Но это чувствует себя ужасно Hacky и должна быть лучше.