【问题标题】:Zend Framework 2 - Uploadify fails with HTTP response 302Zend Framework 2 - Uploadify 失败,HTTP 响应 302
【发布时间】:2012-12-22 06:42:01
【问题描述】:

我试图让Uploadify 工作,但我总是得到一个http 状态代码302

我的 jQuery 看起来像这样:

$('#file_upload').uploadify({
        'swf'      : '<?php echo $this->basePath('/swf/uploadify.swf') ?>',
        'uploader' : '<?php echo $this->url('my-module', array('action'=>'uploadify')) ?>',
        'debug': true,
        'preventCaching'  : false
    });

当我通过浏览器调用我的操作时,它可以工作。当我通过浏览器调用 swf 时,我得到 200 - 所以它也能正常工作。

我查看了uploadify-forum,但他们的解决方案要么不起作用,要么与ZF1规范有关......

【问题讨论】:

  • 你知道,“302”是什么意思吗?这本身并没有什么坏处;)
  • 我知道,但它不起作用并被解释为错误。因此这很糟糕:)

标签: php jquery file-upload zend-framework2 uploadify


【解决方案1】:

我只是使用另一个上传器解决了这个问题。反正 Flash 上传已经过时了,所以我只用了:http://blueimp.github.com/jQuery-File-Upload/

如果您进行基本安装,它就可以工作(我保留了 uploadify 上传功能)。唯一的缺点是您必须手动设计上传...但如果您熟悉 Bootstrap 和 jQuery,则不会那么棘手。

【讨论】:

    【解决方案2】:

    这是一个flash cookie错误,解决方法是重启会话

    注意:我只在 unix/linux 上测试过

     class Module
    {
        public function onBootstrap($e)
        {
            $eventManager = $e->getApplication()->getEventManager();
            $eventManager->attach(\Zend\Mvc\MvcEvent::EVENT_DISPATCH, array($this, 'onApplicationPreDispacth'), 100);
    
        }
    
        public function onApplicationPreDispacth($e)
        {
             $session_name = session_name();
    
             if (isset($_POST[$session_name])) {
                  session_destroy();
                  session_id($_POST[$session_name]);
                  session_start();
             }
        }
    

    此功能的优先级必须高于您发布 302 重定向的功能

    在javascript中:

    $('#file_upload2').uploadify({
            'buttonText' : 'select files',
            'swf'      : '/static/lib/uploadify/uploadify.swf',
            'uploader' : '/service/upload',
            'auto'     : true,
            'formData' : voice : {"<?php echo session_name();?>" : "<?php echo session_id(); ?>",'source':'voice'}
            } 
            // Put your options here
        });
    

    use uploadify in zend framework 2我刚刚写了这个

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-21
      • 2011-06-05
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      • 2012-11-11
      • 2020-06-01
      • 2020-09-04
      相关资源
      最近更新 更多