1 回答
TA贡献1829条经验 获得超4个赞
将图像保存到文件中。返回包含 <IMG SRC=...> 元素的网页。SRC 应该是指向该文件的 URL。
例如,假设您将图像保存到文档根目录下名为“scratch”的子目录中名为“temp2.png”的文件中。那么 IMG 元素将为 <IMG SRC="/scratch/temp2.png"> 。
如果您在生成引用该图像的网页的同一程序中创建并保存该图像,则在保存该图像之前,您的服务器不会返回该页面。如果这只需要几秒钟,服务器就不太可能挂起。许多应用程序需要很长时间才能计算结果,因此对服务器进行编码的人员将确保它可以处理此类延迟。我已经在 Apache、Tomcat 和 GoServe(OS/2 服务器)下完成了此操作,并且从未遇到过问题。
此方法确实有一个缺点,即您需要安排在过期时间(例如 12 小时)后或在您认为用户不再需要它时删除每个临时文件。在您返回的网页上,如果图像是用户可能想要保留的严重内容,您可以警告他们这种情况将会发生。他们随时可以下载。
要删除旧文件,请编写一个脚本来检查它们上次更新的时间,将其与当前日期和时间进行比较,然后删除那些早于到期期限的文件。
您需要一种自动重复运行它的方法。在 Unix 系统上,如果您有 shell 访问权限,“cron”命令是执行此操作的一种方法。谷歌搜索“在网络服务器上删除超过 1 小时的文件的 cron 作业”,发现很多关于方法的讨论。
编写任何自动删除脚本时要非常小心,并彻底测试它以确保它删除正确的文件!如果你把你的有效期设置为一个变量,你可以在测试时将其设置为例如1分钟或5分钟,这样你就不需要等待很长时间。
有多种方法可以将图像流式传输回来而不将其保存到文件中,但我建议的是(可能除了文件删除器)易于编码和调试。我在许多不同的项目中使用过它。
- 1 回答
- 0 关注
- 93 浏览
添加回答
举报