我的场景是这样的:在嵌入式设备上,我们有一个使用 lighttpd 的 Web 界面和一个基于 cgicc 的应用程序。上传新固件需要很长时间,尤其是 CPU 负载很重(这是现场操作的典型情况)。例如,从“顶部”以 80% 的 CPU 使用率运行上传需要 5-10 分钟(!),关闭服务只需 1 分钟。
因此,我必须实现一些允许我在文件上传开始之前停用服务的东西。问题是在lighttpd 将整个文件上传到一组临时文件后,我的 CGI 会识别文件上传操作。我唯一的想法是实现第二个按钮,允许操作员在开始上传之前手动禁用服务。但这并不是很优雅。
在 Javascript 中,我可以隐藏第二个按钮并使用上传按钮模拟点击(我可以捕捉到文件输入的点击吗?)。但这听起来很肮脏,尤其是我们使用不显眼的 Javascript模式。
还有其他方法可以启动一些文件上传前的操作吗?也许通过我不知道的 HTTP 或浏览器等的模块或其他功能?
PS:我们需要向后兼容 IE6,所以不能使用 HTML5 功能。我们使用 XHTML 1.0 严格模式。