javascript - 将文件从一台服务器发布到另一台服务器
问题描述
我有一个 Apache 服务器 A 设置,当前托管一个条形图的网页(使用 Chart.js)。当前每隔几秒钟从本地 SQLite 数据库中提取此数据,并更新 Web 图表。
我现在想在 Raspberry Pi 上使用单独的服务器 B 将数据发送到服务器以用于图表,而不是使用服务器 A 上的数据库。
因此,一台服务器将文件发送到另一台服务器,该服务器以某种方式意识到这一点并接受并处理它。
数据既可以发送并放入当前的 SQLite 数据库,也可以绕过数据库,直接从 Pi 发送的信息中更新图表。
我遇到过 HTTP Post 请求,但不确定这是否是我需要的或如何实现它。
我已经设法让 Pi 简单地托管一个 json 文件(可从外部 IP 地址查看)并使用 Python 中的简单 requests.get('ip_address/json_file') 从中提取数据,但这看起来不像最强大或最安全的解决方案。
非常感谢我应该使用的任何帮助,谢谢!
解决方案
也许我不太明白你的要求,但这是我想象的解决方案:
- 您创建一个支持 WebSocket的前端,连接到服务器 A
- 服务器 B(在树莓上运行的服务器)向服务器 A 发送带有JSON的POST请求
- 服务器 A接受JSON并将其发送给所有使用 WebSocket 协议连接的客户端
服务器 B ---- > 服务器 A < ---- > 前端
这样您就不会直接暴露您的Raspberry,前端发出的每个请求都只会发送到Server A。
为了提供更好的用户体验,您还可以在服务器 A 上创建一个 GET 端点来检索最新收到的 JSON,这样当用户第一次加载前端时,它会调用该端点,即使 Raspberry 尚未更新数据至少用户可以了解最新的可用数据。
推荐阅读
- json - 使用多行创建 Json 值
- excel - 根据未包含在范围内的另一列中的值创建命名范围
- java - @JoinColumn,如何初始化它?
- python - 正则表达式使用“。” 取一个字符
- python - 如何将浮点数与另一个浮点数分开?
- php - 完全无头运行 Powershell
- javascript - 如何将数据分组应用于 HighCharts highstocks 中的指标
- file-upload - 应用程序用户如何将数据保存到他自己的云存储之一?
- ruby-on-rails - ActiveRecord 获取特定时间段的评级获胜者网站
- android - 在哪里可以找到 Topeka 演示 Android 应用程序中使用的平面图标、头像和图形?