it-swarm.com.de

Free Rest API zum Abrufen der aktuellen Datumszeit als Zeichenfolge (Zeitzone irrelevant)

Ich suche eine zuverlässige REST API, die Weltzeit- und Zeitzoneninformationen plattformübergreifend liefern kann.

Ich brauche die aktuelle Zeit als Zeichenfolge. Ich möchte, dass es das Ergebnis in weniger als einer Sekunde zurückgibt, unabhängig vom Standort des Benutzers weltweit.

Unter anderen Implementierungen möchte ich dies für einen konsistenten Countdown-Timer verwenden, um genauer zu sein als die [möglicherweise ungenaue] Computerzeit eines Benutzers. Dies kann GMT oder eine andere Zeitzone sein, sofern die Zeitzone und der Versatz angegeben sind, z. B. 2012-11-05 16:16:50 EST.

Ich würde diese API selbst erstellen, habe aber Bedenken hinsichtlich potenzielle Latenzprobleme (sowie Unachtsamkeit), wenn ich jemanden durch einen ganzen großen Software-Stack wie Rails) filtere, nur um zurückzukehren ein einfaches String.

Eine zu hohe Latenz für Benutzer, die weit von der US-Ostküste entfernt sind, würde den Vorteil der für die Aufgabe erforderlichen Genauigkeit ausgleichen.

Anregungen und/oder Beispiele sind willkommen.

38
chadoh

Wenn Sie Rails verwenden, können Sie einfach eine leere Datei im öffentlichen Ordner erstellen und mit Ajax abrufen. Dann Kopfzeilen analysieren für die Datumskopfzeile. Dateien im öffentlichen Ordner umgehen den Rails Stack und haben daher eine geringere Latenz.

5
chadoh

TimezoneDb bietet eine kostenlose API: http://timezonedb.com/api

GenoNames verfügt auch über eine RESTful-API, mit der die aktuelle Uhrzeit für einen bestimmten Standort abgerufen werden kann: http://www.geonames.org/export/ws-overview.html .

Sie können Greenwich, UK verwenden, wenn Sie GMT möchten.

17
Aamir

Diese API bietet Ihnen die aktuelle Uhrzeit und verschiedene Formate in JSON - https://market.mashape.com/parsify/format#time . Hier ist eine Beispielantwort:

{
  "time": {
    "daysInMonth": 31,
    "millisecond": 283,
    "second": 42,
    "minute": 55,
    "hour": 1,
    "date": 6,
    "day": 3,
    "week": 10,
    "month": 2,
    "year": 2013,
    "zone": "+0000"
  },
  "formatted": {
    "weekday": "Wednesday",
    "month": "March",
    "ago": "a few seconds",
    "calendar": "Today at 1:55 AM",
    "generic": "2013-03-06T01:55:42+00:00",
    "time": "1:55 AM",
    "short": "03/06/2013",
    "slim": "3/6/2013",
    "hand": "Mar 6 2013",
    "handTime": "Mar 6 2013 1:55 AM",
    "longhand": "March 6 2013",
    "longhandTime": "March 6 2013 1:55 AM",
    "full": "Wednesday, March 6 2013 1:55 AM",
    "fullSlim": "Wed, Mar 6 2013 1:55 AM"
  },
  "array": [
    2013,
    2,
    6,
    1,
    55,
    42,
    283
  ],
  "offset": 1362534942283,
  "unix": 1362534942,
  "utc": "2013-03-06T01:55:42.283Z",
  "valid": true,
  "integer": false,
  "zone": 0
}
10
Chris Ismael