每次加载页面时如何对端点进行网络调用

How to make a network call to an endpoint each time a page loads

我的 运行 网站位于 (http://127.0.0.1:8080) 的本地服务器上。

我有一个名为 track 的文件位于 api/track,其中 api 只是一个文件夹。

我有一个文件名 main.js 位于 js/main.js.

最后,我的 index.html 文件与 /api 和 /js 位于同一层。

我想在每次加载页面 index.html 时对该端点 (api/track) 进行网络调用。

此外,我想包括一个时间戳 ts(自 EPOCH 以来的毫秒数)。 url 的一个例子是 /api/track?ts=1594280202864。我不需要使用此调用的结果。

这是我所做的,但我不确定它是否在做我想要的,尤其是网络呼叫部分。有人可以帮忙吗?谢谢

const update = () => {
    var dt = new Date();
    document.getElementById("date").innerHTML = dt;
    
    //date in millisecodn since EPOCH
    var dtInMilSec = dt.getTime();

    fetch('/api/track/dtMilSec')
        .then(response => response.json())
        .then(data => {
            console.log(data)
        });
};
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>The Date</title>
    <link href="style/main.css" rel="stylesheet" />
  </head>
  <body onload="update()">
    <h1>What's today's date?</h1>
    <p>Today is: <span id="date"></span></p>
  <script src="js/main.js"></script>
  </body>

也许可以在相关线程上查看此答案,并从 main.js 脚本中 DOMContentLoaded 的事件侦听器中调用您的 update() 函数,而不是从html 本身的 onload 属性?

document.addEventListener('DOMContentLoaded', () => update(), false);

您似乎希望您的抓取 URL 类似于

fetch('/api/track?ts=' + dtInMilSec)