Ist es möglich, den Inhalt einer TXT-Datei alle paar Sekunden mit HTML zu lesen und anzuzeigen?
P粉529581199
P粉529581199 2023-09-07 08:46:12
0
2
660

Ich habe eine TXT-Datei, die alle paar Sekunden mit neuen Daten aktualisiert wird. Die Speicherung und Generierung erfolgt auf dem Raspberry Pi, der auch als Server fungiert.

Ich möchte seinen Inhalt zur Anzeige zum HTML-Code hinzufügen.

Es sollte aktualisiert werden, ohne dass die Seite manuell neu geladen werden muss.

Gibt es eine Möglichkeit, dies zu tun? Vielleicht AJAX, PHP oder ähnliches verwenden?

Ich muss keinen Code finden/schreiben, da ich weiß, dass es lange dauern kann. Zeigen Sie mir einfach die richtige Richtung, damit ich lernen kann, wie es geht.

P粉529581199
P粉529581199

Antworte allen(2)
P粉477369269

你可以使用jQuery$.ajax$.post$.get

或者也可以使用XMLHttpRequest来进行JavaScript编程(虽然老旧但经典)

对于PHP,可以使用readFile(服务器端不需要API)

一个小故事可能有所帮助

曾经我使用带有WiFi模块的Arduino

我使用Arduino收集数据,然后将数据传递给esp8266(WiFi模块),并使用GET方法发布到我的网站上,像这样:http://mySite.lo/?firstVar=myFirstVar&secondVar=mySecondVar,服务器从URL中获取GET数据

更新:

页面刷新

对于PHP,可以使用header("refresh: 3;")

对于JavaScript,可以使用setInterval(location.reload(),3000)

P粉818125805

您可以使用API端点和客户端的ajax调用来完成此操作。 我为您草拟了一些代码。 我将端点URL设置为/url/to/api.php - 您需要根据树莓派上的服务器设置来更改此URL。

您还需要托管一个包含一些JavaScript代码的HTML文件,该代码每隔几秒钟轮询您的API。我设置它每5秒钟执行一次,使用setInterval。

<script>
// 客户端代码(JavaScript)- 应该放在</body>标签之前
(async () => {
    setInterval(async () => {
        const data = await fetch("/url/to/api.php").then(response => response.text());
        document.getElementById("#htmlElementWithThisId").innerHTML(data);
    }, 5000);
})()
</script>

// 在HTML中,您必须有一个具有id为"htmlElementWithThisId"的元素 - 这是内容将显示的位置

<div id="htmlElementWithThisId"></div>

最后,在api.php文件中,您将读取您的文件,并在每个请求上"echo"文件的内容。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage