本示例演示 服务器公告自动加载、版本/升级提示、通用通知(Toast 轮询)。服务端为 PHP 5.6~8.x 可读 JSON 数据;客户端为 jQuery + Bootstrap 5 + Boxicons,按服务端返回的 client_poll_interval_ms 定时拉取聚合接口(请求结束后再排下一次,避免叠请求;失败退避重试;回到前台立即补拉)
本示例演示 服务器公告自动加载、版本/升级提示、通用通知(Toast 轮询)。服务端为 PHP 5.6~8.x 可读 JSON 数据;客户端为 jQuery + Bootstrap 5 + Boxicons,按服务端返回的 client_poll_interval_ms 定时拉取聚合接口(请求结束后再排下一次,避免叠请求;失败退避重试;回到前台立即补拉)。
程序版本号:服务端常量 ANB_SERVER_APP_VERSION(定义于 server/inc/notify_version.php);JSON 响应根字段 version 与其一致。客户端演示版本在 client/assets/js/notify-client.js 顶部 CLIENT_VERSION,用于与 server/data/meta.json 中 upgrade 字段对比。
feed.php 一次返回公告、升级元数据、通知列表与建议轮询间隔;客户端按间隔拉取并 去重 Toast、失败退避、回到前台补拉。data/*.json,演示「配置与客户端解耦」的发布流程。| 路径 | 说明 |
|---|---|
server/api/feed.php |
聚合 JSON:公告、升级信息、通知列表、建议轮询间隔 |
server/admin/index.php |
可视化管理后台:表单编辑上述数据,保存为 data/*.json(客户端仍只读 feed) |
server/admin/save.php |
后台保存接口(POST + Session 令牌,演示用,生产须鉴权) |
server/data/*.json |
演示数据存储(可由管理后台写入,亦可手工编辑) |
server/config.example.php |
复制为 server/config.php 可改数据目录与 CORS |
client/index.php |
演示页(轮询、公告卡片、Toast) |
client/assets/js/notify-client.js |
定时拉取;Toast 按 id+指纹 去重。「立即拉取」 会重绘公告并逐条弹 Toast(未改内容带「已同步」) |
index.php |
入口:链向客户端 / 服务端 / feed |
app-notify-broadcast-php-cn-sample 置于 Web 根目录或通过 PHP 内置服务器从本示例根目录启动,使 client/ 与 server/ 的相对路径可用(客户端内请求 ../server/api/feed.php)。client/index.php(或根目录 index.php 再进入客户端)。server/admin/index.php 在网页中修改并保存,或手工编辑 server/data 下 JSON;在客户端点击「立即拉取」或等待自动轮询即可验证。Project: PHPDisk - 私有云存储解决方案
This is NOT a freeware, use is subject to license terms.
Website: https://www.phpdisk.com
Author: PHPDisk Team ( admin@phpdisk.com )
Copyright (C) 2008-2026 PHPDisk Team. All Rights Reserved.
如需定制功能,或查看更多示例与源码索引,请访问:https://code.phpdisk.com/?utm_source=app-notify-broadcast-php-cn-sample
Comments
No comments yet—be the first!