2009-09-16 102 views
7

我使用的是Uploadify,而以前工作的东西现在不是,我不知道为什么。无论何时点击上传,我都会收到一个HTTP错误。看着Firefox中的net标签,它看起来并不像它甚至再次向服务器发送任何东西。Uploadify不起作用

我试图把在错误的功能来帮助调试,但状态属性未定义..

$("#fileInput").uploadify({ 
       'uploader': '/scripts/upload/uploadify.swf', 
       'script': '/Member/UploadImages/PerformUpload', 
       'cancelImg': '/scripts/upload/cancel.png',  
       'multi': true, 
       'simUploadLimit': 1, 
       'fileDesc': "Images", 
       'fileExt': "*.jpg;*. jpeg;*.bmp;*.png", 
       'sizeLimit': 3000000, 
       'onAllComplete':showFinishedLink, 
       'onError': function (event, queueID ,fileObj, errorObj) { 
        var msg; 
        if (errorObj.status == 404) { 
         alert('Could not find upload script. Use a path relative to: '+'<?= getcwd() ?>'); 
         msg = 'Could not find upload script.'; 
        } else if (errorObj.type === "HTTP") 
         msg = errorObj.type+": "+errorObj.status; 
        else if (errorObj.type ==="File Size") 
         msg = fileObj.name+'<br>'+errorObj.type+' Limit: '+Math.round(errorObj.sizeLimit/1024)+'KB'; 
        else 
         msg = errorObj.type+": "+errorObj.text; 
        alert(msg); 
        $("#fileUpload" + queueID).fadeOut(250, function() { $("#fileUpload" + queueID).remove()}); 
        return false; 
        }, 
      }); 

任何想法?

回答

6

好的,我发现我正在使用的错误调试是旧的,我可以说errorObj.info得到更详细的信息,为什么它不工作。

做到这一点,结果是404这意味着我试图发布到脚本的脚本没有被拾起,即使它确实存在。听起来像一个路由问题...

案件关闭!

只是为了添加更多信息 - 404是web.config文件中旧的默认登录URL的结果。

一旦我解决了这个问题,404就变成了302(查看IIS日志),因为该网站正在将我重定向到登录页面。

我上传脚本是在网站的身份验证的区域,所以我需要使用它在这个网站

Using flash with aspnet mvc

+0

感谢您发布您的后续行动。我遇到同样的问题,有点难受。 – digitaldreamer 2010-09-17 20:03:32

2

我收到了一个302错误只在Firefox/Chrome的出现所描述的内容: IE8工作正常。结果问题是,Netscape现在正在发送auth cookies与它的文件回发。我允许在web配置中处理上传的.ashx文件具有匿名授权,并且没有其他问题。

<location path="UploadifyUploadHandler.ashx"> 
    <system.web> 
    <authorization> 
     <allow users="?"/> 
    </authorization> 
    </system.web> 
</location>