Schaltsekunden UTC↔TAI
Ermitteln Sie den Abstand zwischen Atomzeit und UTC an jedem Datum oder lassen Sie die Schaltsekunden dahinter auflisten: Am 2. Januar 2017 beträgt TAI−UTC 37 Sekunden. Die Tabelle ist fest eingebaut. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- Berechnungsmodus
- Offset
- Datum
- 2017-01-02
- TAI−UTC-Versatz (Sekunden)
- 37
Kostenloses, deterministisches Werkzeug. Es listet die eingebetteten IERS-Schaltsekunden auf und wandelt zivile UTC-Daten ohne jeglichen Netzwerkzugriff in den TAI-UTC-Versatz um.
So funktioniert es
Diese Fähigkeit listet die von der IERS veröffentlichten Schaltsekunden auf und wandelt ein ziviles UTC-Datum in den TAI-UTC-Versatz um, und zwar ganz ohne Netzwerkzugriff. Im Modus « list » erhalten Sie die vollständige Tabelle aller historischen Sprünge; im Modus « offset » geben Sie ein Datum im ISO-8601-Format an, und die Berechnung liefert Ihnen die genaue Differenz zwischen der Internationalen Atomzeit und der koordinierten Weltzeit zu genau diesem Zeitpunkt.
Bevor Sie diese Funktion in Ihre Produktionsabläufe oder automatisierten Tests einbinden, lesen Sie bitte die Referenzbeispiele, die sowohl die Erfolgs- als auch die Fehlerpfade abdecken.
Eingaben und Ausgaben
Die erforderlichen Schemafelder müssen vorhanden und korrekt typisiert sein, während optionale Felder auf dokumentierte Standardwerte zurückfallen. Erfolgreiche Antworten enthalten stets die wichtigsten Ausgabefelder, damit Ihre Oberflächenbindungen dauerhaft stabil bleiben und niemals mit einer unerwarteten Lücke umgehen müssen. Die Prüfung folgt einer festen, wiederholbaren Reihenfolge, sodass dieselbe Eingabe stets dieselbe Ausgabe und dieselbe Fehlerzeichenkette erzeugt, was für die Zertifizierung unerlässlich ist.
Diese strenge Trennung zwischen Erfolgs- und Fehlerpfaden sorgt dafür, dass Ihre Integration weder auf stille Fehler stößt noch auf uneinheitliche Meldungen angewiesen ist, deren Wortlaut sich von einer Version zur nächsten ändern könnte. Wir empfehlen Ihnen daher, vor der Anbindung dieser Fähigkeit an Ihre Prozesse die Referenzbeispiele aufmerksam zu lesen, die sowohl die Erfolgs- als auch die Fehlerpfade vollständig abdecken und Ihnen genau zeigen, welche Antwort Sie in jedem Fall erwarten dürfen.
Grenzfälle und Grenzen
Leere Zeichenketten, falsche Typen und widersprüchliche Bereiche werden frühzeitig abgewiesen, noch bevor irgendeine Berechnung stattfindet. Zivile Daten ohne Zeitzone werden als Kalenderdaten behandelt und erfahren keine impliziten Umrechnungen, die den zurückgegebenen Versatz verfälschen könnten. Die Schaltsekundentabellen reisen eingebettet im Ordner der Fähigkeit mit, weshalb zur Laufzeit kein einziger Netzwerkaufruf erfolgt und das Ergebnis auch vollständig offline reproduzierbar bleibt.
Dieses Verhalten macht die Funktion für abgeschottete Umgebungen, für Pipelines der kontinuierlichen Integration und für Situationen geeignet, in denen keine Verbindung gewährleistet ist. Da die eingebetteten Tabellen zusammen mit der Fähigkeit ausgeliefert werden, bleibt das Verhalten außerdem über die Zeit hinweg stabil und hängt nicht von einem externen Dienst ab, der jederzeit ausfallen oder sein Format ändern könnte. So behalten Sie die volle Kontrolle über Ihre Ergebnisse und können jede Berechnung jederzeit exakt nachvollziehen.
Anwendungsfälle
Tägliche Arbeit
Erhalten Sie eine verlässliche Antwort ganz ohne Tabellenkalkulation.
Lehre
Stabile, reproduzierbare Prüfdaten für Ihre Vorführungen.
Häufige Fragen
Netzwerk?
Kein Netzwerkzugriff; alles wird auf dem Gerät berechnet.
Was bedeutet TAI−UTC?
Es gibt an, wie viele Sekunden die Internationale Atomzeit an einem Datum der koordinierten Weltzeit voraus ist. Der Abstand ändert sich nur, wenn UTC eine Schaltsekunde erhält, deshalb wird er aus der Schaltsekundentabelle gelesen.
Kann ich die Schaltsekunden selbst sehen?
Ja. Wählen Sie die Listenoption, um die Schaltsekunden der eingebauten Tabelle zu sehen, auf Wunsch begrenzt auf einen Zeitraum zwischen zwei Daten. Ein Zeitraum, der vor seinem Beginn endet, wird abgelehnt statt erraten.
Muss ich eine Uhrzeit oder Zeitzone angeben?
Nein. Geben Sie nur das Kalenderdatum ein. Ein Datum ohne Zeitzone gilt als einfacher Kalendertag in UTC, Ihr Standort ändert den Abstand also nie.
Warum wird meine Eingabe abgelehnt?
Leere Eingaben, Werte der falschen Art und widersprüchliche Zeiträume werden vor jeder Rechnung zurückgewiesen. So erhalten Sie eine klare Meldung statt eines Abstands, der richtig aussieht, es aber nicht ist.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/date/leap-seconds \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"mode":"offset","date":"2017-01-02"}'const res = await fetch("https://api.kit.forhosting.com/date/leap-seconds", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"mode": "offset",
"date": "2017-01-02"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/leap-seconds",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"mode": "offset",
"date": "2017-01-02"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/leap-seconds", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"mode":"offset","date":"2017-01-02"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"mode":"offset","date":"2017-01-02"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/leap-seconds", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"mode": "offset",
"date": "2017-01-02"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.leap_seconds",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
So funktioniert es
Die Berechnung ist vollständig deterministisch und läuft kostenlos in Ihrem Browser, mit derselben reinen Funktion wie die API: Das online angezeigte Ergebnis ist daher Byte für Byte identisch mit dem, was der Dienst berechnet. Ihre Eingaben werden vor jeder Rechenoperation geprüft, sodass ein falscher Typ einen klaren invalid_input-Fehler auslöst und kein irreführendes Ergebnis liefert.
Eingaben und Ausgaben
Sehr große Zwischenwerte, die den IEEE-754-Bereich überschreiten, werden zu ausdrücklichen Bereichsfehlern statt zu stillen Nullwerten, denn ein gemeldeter Fehler ist stets einem unbemerkt beschädigten Datum vorzuziehen.
Grenzfälle und Grenzen
Prüfen Sie bitte die Referenzbeispiele vor der Integration: Sie zeigen genau, welche Eingaben ein gültiges Ergebnis liefern und welche stattdessen einen invalid_input-Fehler erzeugen, damit Sie in der Produktion keine Überraschungen erleben.
Integrationsbeispiele
Automatisierung
Dieselbe reine Funktion im Widget und in der API.
Technische Fragen
Ist es kostenlos?
Ja, Stufe A direkt in Ihrem Browser.
Ungültige Eingabe?
Ein invalid_input-Fehler mit einer klaren Kennung.
Ist es stabil?
Deterministische Referenzdaten legen den Vertrag fest.
Autor?
samurai.