Saat Dilimi istekleri ve yanıtları

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 veya
  • xml, çı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.
  • language sağlanmazsa API, Accept-Language baş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&timestamp=1733428634&key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510&timestamp=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&timestamp=1710547034&key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510&timestamp=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&timestamp=1710547034&key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510&timestamp=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 timestamp sırasında saat dilimi yaz saati uygulamasında değilse bu değer sıfır olur.

isteğe bağlı dize

Belirtilen durum kodunun nedenleri hakkında ayrıntılı bilgi. Durum Ok dışında bir değerse dahil edilir.

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: Pacific Daylight Time veya Australian Eastern Daylight Time.

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_LIMIT aş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.