/// // Die gemeinsame Uhr. // // Zeiten entstehen auf den Geraeten an der Strecke, nicht auf dem Server: // Nur so laesst sich im Funkloch ueberhaupt stoppen. Damit steckt aber der // Versatz zweier Telefonuhren in jeder Messung, bei der einer startet und ein // anderer stoppt. Also braucht es eine Referenz, gegen die sich jedes Geraet // vor dem Event abgleicht — und das ist diese Route. // // Warum nicht der `Date`-Header jeder beliebigen Antwort: Der hat nach // RFC 9110 Sekundenaufloesung. Allein daraus folgte ein Fehler von bis zu // einer halben Sekunde — auf einer Stage der Unterschied zwischen Platz eins // und Platz drei. Hier kommen Millisekunden. // // Ohne Login: Es ist die Uhrzeit. Sie verraet nichts, was nicht jede Antwort // des Servers ohnehin im Date-Header mitschickt. routerAdd('GET', '/api/clock', (e) => { return e.json(200, { now: Date.now() }) })