Thể hiện thời gian thực (hay đôi khi là thời gian thực).
Loại này có thể biểu thị thời gian thực theo một trong những cách sau:
- Khi bạn đặt utcOffset và không đặt thời gian: giờ dân sự vào một ngày theo lịch có độ lệch cụ thể từ UTC.
- Khi bạn đặt múi giờ và không đặt utcOffset: thời gian dân sự vào một ngày theo lịch theo múi giờ cụ thể.
- Khi bạn không đặt múi giờ cũng như utcOffset: giờ dân sự vào một ngày theo lịch theo giờ địa phương.
Đây là ngày tương ứng với Lịch Proleptic Gregorian.
Nếu năm, tháng hoặc ngày bằng 0, thì Ngày giờ được coi là không có năm, tháng hoặc ngày cụ thể.
Loại này cũng có thể được dùng để biểu thị thời gian thực nếu tất cả các trường ngày và giờ được đặt trong một trong hai trường hợp time_offset
. Thay vào đó, hãy cân nhắc việc sử dụng thông báo Timestamp
cho thời gian thực. Nếu trường hợp sử dụng của bạn cũng muốn lưu trữ múi giờ của người dùng, bạn có thể thực hiện việc này trong một trường khác.
Loại này linh hoạt hơn một số ứng dụng có thể muốn. Hãy nhớ ghi lại và xác thực các giới hạn của ứng dụng.
Biểu diễn dưới dạng JSON |
---|
{ "year": integer, "month": integer, "day": integer, "hours": integer, "minutes": integer, "seconds": integer, "nanos": integer, // Union field |
Các trường | |
---|---|
year |
Không bắt buộc. Năm. Phải từ 1 đến 9999 hoặc bằng 0 nếu chỉ định ngày giờ không có năm. |
month |
Không bắt buộc. Tháng trong năm. Phải từ 1 đến 12 hoặc 0 nếu chỉ định ngày giờ mà không có tháng. |
day |
Không bắt buộc. Ngày trong tháng. Giá trị phải từ 1 đến 31 và có hiệu lực trong năm và tháng, hoặc bằng 0 nếu chỉ định ngày giờ mà không cần ngày. |
hours |
Không bắt buộc. Giờ trong ngày ở định dạng 24 giờ. Giá trị phải từ 0 đến 23, mặc định là 0 (giữa đêm). API có thể chọn cho phép giá trị "24:00:00" trong các trường hợp như thời gian đóng cửa của doanh nghiệp. |
minutes |
Không bắt buộc. Số phút trong ngày. Phải từ 0 đến 59, mặc định là 0. |
seconds |
Không bắt buộc. Số giây của thời gian. Thường phải từ 0 đến 59, mặc định là 0. API có thể cho phép giá trị 60 nếu cho phép thời gian nhuận. |
nanos |
Không bắt buộc. Phân số giây trong nano giây. Phải từ 0 đến 999.999.999, mặc định là 0. |
Trường liên kết time_offset . Không bắt buộc. Chỉ định độ lệch UTC hoặc múi giờ của DateTime. Hãy chọn kỹ giữa các quốc gia đó, vì dữ liệu múi giờ có thể thay đổi trong tương lai (ví dụ: một quốc gia sửa đổi ngày bắt đầu/kết thúc DST của họ và Ngày giờ trong tương lai trong phạm vi bị ảnh hưởng đã được lưu trữ). Nếu bạn bỏ qua, Ngày giờ được coi là theo giờ địa phương. time_offset chỉ có thể là một trong những trạng thái sau: |
|
utcOffset |
Chênh lệch múi giờ UTC. Phải là cả giây, từ -18 giờ đến +18 giờ. Ví dụ: độ lệch giờ UTC là -4:00 sẽ được biểu thị là { seconds: -14400 }. Khoảng thời gian tính bằng giây có tối đa 9 chữ số thập phân, kết thúc bằng " |
timeZone |
Múi giờ. |
TimeZone
Biểu thị múi giờ từ Cơ sở dữ liệu múi giờ IANA.
Biểu diễn dưới dạng JSON |
---|
{ "id": string, "version": string } |
Các trường | |
---|---|
id |
Múi giờ Cơ sở dữ liệu múi giờ IANA, ví dụ: "America/New_York". |
version |
Không bắt buộc. Số phiên bản Cơ sở dữ liệu múi giờ IANA, ví dụ: "2019a". |