You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过C程序动态更新thttpd服务器下HTML页面的文本内容

你原先「C应用写入txt文件、前端定时拉取更新」的思路完全可行,针对thttpd这类轻量Web服务器的场景,该方案不需要额外部署后端服务、开发成本极低,是非常适配的选择。

具体实现代码

使用浏览器原生fetchAPI即可完成定时拉取更新的需求,以下示例代码每3秒读取一次dynamic_data.txt的文本内容,自动替换页面上id为ispr_1的元素展示内容:

<script>
    const ispr = document.getElementById("ispr_1");
    const myFile = 'dynamic_data.txt';
    async function updateDynamicData() {
        // cache: "reload" 配置强制跳过缓存,拉取最新的文件内容
        const response = await fetch(myFile, {cache: "reload"});
        if (response.ok) {
            const data = await response.text();
            ispr.textContent = data;
        } else {
            alert('数据拉取失败,错误码:' + response.status);
        }
    }
    // 3000ms = 3秒,可根据你的更新频率需求自行调整间隔时长
    setInterval(updateDynamicData, 3000);
</script>

可选优化方案

如果后续你需要更高的实时性、或者想要降低轮询带来的性能损耗,可以选择以下复杂度略高的方案:

  • C应用直接输出轻量HTTP接口,由thttpd做反向代理,前端用EventSource建立长连接接收主动推送的更新数据,无需定期轮询
  • 如果需要同时更新页面多位置的内容,可以把txt替换为JSON格式存储,前端解析后可批量更新多块展示内容

内容的提问来源于stack exchange,提问作者AlexB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 06:36:06