ZF2:上传图片后为什么要刷新?

时间:2014-02-27 23:08:26

标签: file-upload zend-framework2

在我的ZF2应用程序中,我使用\Zend\Filter\File\RenameUpload上传图像。这很好用,除了通常在上传文件后,我必须“刷新”我的视图,否则我仍然会看到旧图像。我认为这是一个性能问题,虽然我可以想到几种繁琐的方法,但如果没有一种“标准”的方法来处理它,我会感到惊讶。

情况是我的申请有'公司简介'。如果公司想要更改其徽标,则会查看其个人资料并点击“更改徽标”。这呈现了用户上传新图像的模态形式。提交表单后,上传图片,然后将302重定向回公司资料。

以下是我配置文件上传过滤器的方法:

$filter = new \Zend\Filter\File\RenameUpload(array(
    'target' => './public/uploads/logos/' . md5($orgId . SALT),
    'overwrite' => true));

然后我将它附加到InputFilter,当我调用InputFilter :: getValues()时,它就是从'temp目录'重命名(即移动)到我的uploads目录。

我正在开发运行Linux的高规格台式机。我无法想象在生产环境中性能会更好。

处理这个问题的最佳方法是什么?例如,我可以在重命名上传之前检查文件的存在并将其删除,但这会减少首先使用重命名上传过滤器的目的。当然有更好的解决方案吗?

编辑:好的,所以我现在认为这只是浏览器缓存。我已经将随机查询参数附加到img src属性,并且问题没有重现。如果我能最终确定它已经解决了,我会把它写成答案......

1 个答案:

答案 0 :(得分:0)

好的,所以根据上面的编辑,答案是客户端正在缓存图像,并且向img src属性追加查询参数已将其排序。案件结案。