Saat Dilimi
Saat Dilimi API istekleri, URL dizesi olarak oluşturulur. API, dünya üzerindeki bir noktanın saat dilimi verilerini döndürür. Bu nokta, enlem-boylam çiftiyle belirtilir. Okyanuslar veya denizler gibi su üzerindeki konumlar için saat dilimi verilerinin mevcut olmayabileceğini unutmayın.
Saat Dilimi isteği aşağıdaki biçimdedir:
https://maps.googleapis.com/maps/api/timezone/outputFormat?parameters
Burada outputFormat, aşağıdaki değerlerden biri olabilir:
json(önerilir), JavaScript Object Notation (JSON) biçiminde çıkışı belirtir veyaxml, çıkışın XML biçiminde olduğunu ve bir<TimeZoneResponse>düğümü içinde sarmalandığını gösterir.
Gerekli parametreler
konum
Aranacak konumu temsil eden, virgülle ayrılmış enlem, boylam çifti location=39.6034810,-119.6822510.
timestamp
1 Ocak 1970 UTC gece yarısından itibaren saniye cinsinden istenen zaman. Time Zone API, location saat dilimine göre yaz saati uygulamasının geçerli olup olmadığını belirlemek için timestamp değerini kullanır.
API'nin geçmiş saat dilimlerini dikkate almadığını unutmayın. Yani geçmiş bir zaman damgası belirtirseniz API, konumun daha önce farklı bir saat diliminde olma olasılığını dikkate almaz.
İsteğe bağlı parametreler
language
Sonuçların döndürüleceği dil.
- Desteklenen dillerin listesini inceleyin. Google, desteklenen dilleri sık sık güncellediğinden bu liste kapsamlı olmayabilir.
-
languagesağlanmazsa API,Accept-Languagebaşlığında belirtilen tercih edilen dili kullanmaya çalışır. - API, hem kullanıcı hem de yerel halk tarafından okunabilen bir açık adres sağlamak için elinden geleni yapar. Bu amaca ulaşmak için tercih edilen dili dikkate alarak açık adresleri yerel dilde döndürür ve gerekirse kullanıcının okuyabileceği bir alfabeye dönüştürür. Diğer tüm adresler tercih edilen dilde döndürülür. Adres bileşenlerinin tümü, ilk bileşenden seçilen dilde döndürülür.
- Tercih edilen dilde bir ad yoksa API en yakın eşleşmeyi kullanır.
- Tercih edilen dil, API'nin döndürmeyi seçtiği sonuç kümesi ve bu sonuçların döndürülme sırası üzerinde küçük bir etkiye sahiptir. Coğrafi kodlayıcı, kısaltmaları dile göre farklı şekilde yorumlar. Örneğin, sokak türlerinin kısaltmaları veya bir dilde geçerli olup başka bir dilde geçerli olmayan eş anlamlı kelimeler. Örneğin, Macarcada utca ve tér, sokak kelimesinin eş anlamlılarıdır.
Saat dilimi örnekleri
Bu bölümde, API'nin özelliklerini gösteren bazı örnek sorgular yer alır.
Aşağıdaki sorgu, Nevada, ABD için bir saat dilimi isteği gerçekleştirir. Zaman damgası 5 Aralık 2024 olarak ayarlanmıştır.
URL
https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510×tamp=1733428634&key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510×tamp=1733428634&key=YOUR_API_KEY'
JSON
{ "dstOffset": 0, "rawOffset": -28800, "status": "OK", "timeZoneId": "America/Los_Angeles", "timeZoneName": "Pacific Standard Time", }
XML
<TimeZoneResponse> <status>OK</status> <raw_offset>-28800.0000000</raw_offset> <dst_offset>0.0000000</dst_offset> <time_zone_id>America/Los_Angeles</time_zone_id> <time_zone_name>Pacific Standard Time</time_zone_name> </TimeZoneResponse>
Aşağıdaki sorgu, Nevada, ABD için bir saat dilimi isteği gerçekleştirir. Konum, yukarıdaki istekle aynı ancak zaman damgası 15 Mart 2024 olarak ayarlanmış. Yanıt artık yaz saati farkını içerir.
URL
https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510×tamp=1710547034&key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510×tamp=1710547034&key=YOUR_API_KEY'
JSON
{ "dstOffset": 3600, "rawOffset": -28800, "status": "OK", "timeZoneId": "America/Los_Angeles", "timeZoneName": "Pacific Daylight Time", }
XML
<TimeZoneResponse> <status>OK</status> <raw_offset>-28800.0000000</raw_offset> <dst_offset>3600.0000000</dst_offset> <time_zone_id>America/Los_Angeles</time_zone_id> <time_zone_name>Pacific Daylight Time</time_zone_name> </TimeZoneResponse>
Bu örnek, yukarıdaki iki örneğe benzer ancak bir dil parametresi ayarlar. Yanıt artık İspanyolcaya yerelleştirilecek.
URL
https://maps.googleapis.com/maps/api/timezone/json?language=es&location=39.6034810,-119.6822510×tamp=1710547034&key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510×tamp=1710547034&language=es&key=YOUR_API_KEY'
JSON
{ "dstOffset": 3600, "rawOffset": -28800, "status": "OK", "timeZoneId": "America/Los_Angeles", "timeZoneName": "hora de verano del Pacífico", }
XML
<TimeZoneResponse> <status>OK</status> <raw_offset>-28800.0000000</raw_offset> <dst_offset>3600.0000000</dst_offset> <time_zone_id>America/Los_Angeles</time_zone_id> <time_zone_name>hora de verano del Pacífico</time_zone_name> </TimeZoneResponse>
Saat dilimi yanıtları
Saat Dilimi, her geçerli istek için istek URL'sinde belirtilen biçimde bir yanıt döndürür.
TimeZoneResponse
| Alan | Zorunlu | Tür | Açıklama |
|---|---|---|---|
|
required | TimeZoneStatus | Daha fazla bilgi için TimeZoneStatus bölümüne bakın. |
|
isteğe bağlı | sayı |
Yaz saati uygulaması için saniye cinsinden fark. Belirtilen |
|
isteğe bağlı | dize |
Belirtilen durum kodunun nedenleri hakkında ayrıntılı bilgi.
Durum |
|
isteğe bağlı | sayı |
Belirli bir konum için UTC'ye olan uzaklık (saniye cinsinden). Bu, yaz saati uygulamasını etkilemez. |
|
isteğe bağlı | dize |
Saat diliminin kimliğini içeren bir dize (ör. "America/Los_Angeles" veya "Australia/Sydney"). Bu kimlikler, Unicode Common Locale Data Repository (CLDR) projesi tarafından tanımlanır ve şu anda timezone.xml dosyasında mevcuttur. Bir saat diliminin birden fazla kimliği varsa standart kimlik döndürülür. XML yanıtlarında bu, her saat diliminin ilk takma adıdır. Örneğin, "Asia/Kolkata" yerine "Asia/Calcutta" döndürülür. |
|
isteğe bağlı | dize |
Saat diliminin uzun biçimdeki adı. Dil parametresi ayarlanırsa bu alan yerelleştirilir. Örneğin:
|
TimeZoneStatus
Saat Dilimi yanıt nesnesindeki status alanı, isteğin durumunu içerir. status alanı aşağıdaki değerleri içerebilir:
-
OK, isteğin başarıyla gerçekleştirildiğini gösterir. -
INVALID_REQUEST, isteğin yanlış biçimlendirildiğini gösterir. -
OVER_DAILY_LIMITaşağıdakilerden herhangi birini gösterir:- API anahtarı eksik veya geçersiz.
- Hesabınızda faturalandırma etkinleştirilmemiştir.
- Kullanıcının kendi belirlediği kullanım sınırı aşıldı.
- Sağlanan ödeme yöntemi artık geçerli değilse (örneğin, kredi kartının süresi dolmuşsa)
-
OVER_QUERY_LIMIT, talep edenin kotayı aştığını gösterir. -
REQUEST_DENIED, API'nin isteği tamamlamadığını gösterir. İsteğin HTTP yerine HTTPS üzerinden gönderildiğini doğrulayın. -
UNKNOWN_ERROR, bilinmeyen bir hatayı gösterir. -
ZERO_RESULTS, belirtilen konum veya zaman için saat dilimi verisi bulunamadığını gösterir. İsteğin su üzerinde değil, karada bir konum için olduğunu onaylayın.
Yerel saati hesaplama
Belirli bir konumun yerel saati, timestamp parametresi ile sonuçtaki dstOffset ve rawOffset alanlarının toplamıdır.