nxdev-org commited on
Commit
ef83458
·
1 Parent(s): 8bb14a4
Files changed (3) hide show
  1. index.html +6 -1
  2. main.py +2 -4
  3. requirements.txt +5 -0
index.html CHANGED
@@ -2,6 +2,7 @@
2
  <html>
3
  <head>
4
  <title>Minimalistic SSE Frontend</title>
 
5
  <style>
6
  body {
7
  font-family: Arial, sans-serif;
@@ -45,6 +46,7 @@
45
  <th>Event ID</th>
46
  <th>Message</th>
47
  <th>Date & Time</th>
 
48
  </tr>
49
  </thead>
50
  <tbody id="data-list"></tbody>
@@ -56,7 +58,10 @@
56
  eventSource.addEventListener('new_message', event => {
57
  const { message, datetime } = JSON.parse(event.data);
58
  const row = document.createElement('tr');
59
- row.innerHTML = `<td>${event.lastEventId}</td><td>${message}</td><td>${datetime}</td>`;
 
 
 
60
  dataList.appendChild(row);
61
  });
62
  </script>
 
2
  <html>
3
  <head>
4
  <title>Minimalistic SSE Frontend</title>
5
+ <meta> </meta>
6
  <style>
7
  body {
8
  font-family: Arial, sans-serif;
 
46
  <th>Event ID</th>
47
  <th>Message</th>
48
  <th>Date & Time</th>
49
+ <th>Delay(ms)</th>
50
  </tr>
51
  </thead>
52
  <tbody id="data-list"></tbody>
 
58
  eventSource.addEventListener('new_message', event => {
59
  const { message, datetime } = JSON.parse(event.data);
60
  const row = document.createElement('tr');
61
+ const tr = new Date(datetime);
62
+ const tn = new Date(Date.now());
63
+ const delay = (tn - tr);
64
+ row.innerHTML = `<td>${event.lastEventId}</td><td>${message}</td><td>${datetime}</td><td>${delay}</td>`;
65
  dataList.appendChild(row);
66
  });
67
  </script>
main.py CHANGED
@@ -28,12 +28,10 @@ def get_new_messages() -> Iterable:
28
  "data": json.dumps(
29
  {
30
  "message": "test message",
31
- "datetime": datetime.datetime.now().isoformat(
32
- sep="T", timespec="auto"
33
- ),
34
  }
35
  ),
36
- "id": uuid.uuid4(),
37
  }
38
  ]
39
 
 
28
  "data": json.dumps(
29
  {
30
  "message": "test message",
31
+ "datetime": datetime.datetime.now(datetime.timezone.utc).isoformat(),
 
 
32
  }
33
  ),
34
+ "id": str(uuid.uuid4()),
35
  }
36
  ]
37
 
requirements.txt ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ fastapi
2
+ uvicorn
3
+ uvloop
4
+ websockets
5
+ sse-starlette