我最近向 Moodle 贡献了一些代码,它使用 HTML5 的一些功能,允许通过从桌面拖放以表单形式上传文件(代码的核心部分在这里:https ://github.com/moodle /moodle/blob/master/lib/form/dndupload.js供参考)。
这很好用,除非用户拖动文件夹/目录而不是真实文件。然后将垃圾上传到服务器,但文件名与文件夹匹配。
我正在寻找的是一种简单可靠的方法来检测FileList对象中是否存在文件夹,因此我可以跳过它(并且可能还会返回友好的错误消息)。
我查看了 MDN 上的文档以及更通用的网络搜索,但没有找到任何东西。我还查看了 Chrome 开发人员工具中的数据,似乎 File 对象的“类型”始终设置为文件夹的“”。但是,我不太相信这是最可靠的跨浏览器检测方法。
有没有人有更好的建议?