如何在 node.js 服务器上的多个客户端之间同步数据库文件而不下载那些已经下载的文件?

How to synchronize database files between multiple clients on node.js server without download those files that are already downloaded?

我正在制作一个带有 MySQL 数据库的 node.js 应用程序,并且在某些表中有字符串字段代表文件系统中的路径,例如:"C:\Users\steve\Desktop\my-nodejs-app\files\Apple.jpg" 并且当一个客户端第一次连接到服务器会自动下载数据库中那些路径下的所有文件。每个客户端都可以在服务器中添加寄存器和发送文件。

我的问题是: 假设两个客户端定期使用该应用程序,并且客户端 1 在文件文件夹中添加了一个新文件。在 client1 的文件夹中,所有文件都会更新,但是 client2 在应用程序中连接,它拥有所有文件,但没有添加新文件。

我该如何解决这个问题?制作一个客户端每次连接到服务器时只下载那些没有的文件而不下载所有文件的应用程序?

我建议让客户端请求 "connect" 上所有文件的列表,然后遍历它们以查看它们是否存在于本地。如果他们不这样做,request/download 他们从服务器。