因此,我正在进行基于 Web 的文件系统抽象层开发。就像文件浏览器一样,除了它有一些额外的功能,比如奇怪的权限等。
我希望以某种方式通知用户有关目录更改的信息。因此,即当有人通过 FTP 上传新文件时,某些用户应该会收到正确的消息。消息不需要特别详细,我真的不需要显示更改的确切资源。父目录名称应该足够了。
你会推荐什么方法?
因此,我正在进行基于 Web 的文件系统抽象层开发。就像文件浏览器一样,除了它有一些额外的功能,比如奇怪的权限等。
我希望以某种方式通知用户有关目录更改的信息。因此,即当有人通过 FTP 上传新文件时,某些用户应该会收到正确的消息。消息不需要特别详细,我真的不需要显示更改的确切资源。父目录名称应该足够了。
你会推荐什么方法?
如果您的服务器是 Linux,您可以使用inotify之类的方法来执行此操作
如果唯一的更新来自 FTP,那么我过去使用的另一个解决方案是向ProFTPD编写一个附加模块,该模块在上传完成后执行“通知”。
看到这个问题:如何快速找到添加/删除的文件?
但是,如果您可以通过某种方式控制上传(即使用 HTTP POST 而不是 FTP),您可以简单地在上传完成后发送通知。这还有一个额外的好处,就是可以很简单地确保用户永远不会看到部分文件。
一个简单的方法是监视/检查工作目录的最后修改日期(例如使用 os.stat() )。
每当修改目录中的文件时,工作目录(文件所在的目录)的最后修改日期也会更改。
至少这适用于我正在处理的文件系统(ufs,ext3)。我不确定是否所有文件系统都这样做。