Flash 使用SWFUpload,为什么在使用Firefox时upload.aspx没有处理我的上传(它们在IE中得到正确处理)?

Flash 使用SWFUpload,为什么在使用Firefox时upload.aspx没有处理我的上传(它们在IE中得到正确处理)?,flash,firefox,internet-explorer,swfupload,Flash,Firefox,Internet Explorer,Swfupload,使用SWFUpload v2.2、Firefox 3、IE 8、Flash 10 在我的ASP.NET应用程序中,所有上载都由upload.aspx处理(我在设置对象中设置了正确的上载url) 有人能告诉我为什么(在Firefox中)上传从未到达upload.aspx页面吗 此处显示了用户访问以上载文件的页面的大部分代码(注意:正在使用母版页): var-swfu; window.onload=函数(){ swfu=新SWFUpload({ //后端设置 上传url:“../upload.

使用SWFUpload v2.2、Firefox 3、IE 8、Flash 10
在我的ASP.NET应用程序中,所有上载都由upload.aspx处理(我在设置对象中设置了正确的上载url)
有人能告诉我为什么(在Firefox中)上传从未到达upload.aspx页面吗

此处显示了用户访问以上载文件的页面的大部分代码(注意:正在使用母版页):


var-swfu;
window.onload=函数(){
swfu=新SWFUpload({
//后端设置
上传url:“../upload.aspx”,
后参数:{
“ASPSESSID”:”
},
//文件上载设置
文件大小限制:“10MB”,
文件类型:“***”,
文件类型描述:“所有文件”,
文件上传限制:1,
文件队列限制:1,
//假设成功超时:60,
//事件处理程序设置-这些函数在Handlers.js中定义
//处理程序不是SWFUpload的一部分,而是我的网站的一部分,并控制如何使用它
//我的网站对SWFUpload事件做出反应。
文件队列错误处理程序:fileQueueError,
文件对话框完成处理程序:文件对话框完成,
上传进度处理程序:上传进度,
上载错误\u处理程序:上载错误,
上载成功\u处理程序:上载成功,
上载完成\u处理程序:上载完成,
//按钮设置
按钮图片url:“../Images/XPButtonNoText\u 160x22.png”,
按钮\u占位符\u id:“spanButtonPlaceholder”,
按钮宽度:160,
按钮高度:22,
按钮文本:“上传文件(最大10 MB)”,
按钮文字样式:'.按钮{字体系列:Helvetica,Arial,无衬线;字体大小:14pt;}.按钮小{字体大小:10pt;}',
按钮\文本\顶部\填充:1,
按钮\文本\左\填充:5,
//闪光设置
flash_url:“../swfupload/swfupload.swf”,//相对于此文件
自定义\u设置:{
上载\u目标:“divFileProgressContainer”
},
//调试设置
调试:false
});
}

很有可能,因为这在IE中有效,而不是在Firefox中,并且您正在尝试进行一些身份验证(因此发布参数:{ “ASPSESSID”:” },) 您遇到了flash/firefox/opera“bug/”问题。在这种情况下,flash uploader实际上是在自己的上下文中运行,而不是在共享上下文中运行,因此无法访问sessionID的cookies

使用调试器检查并查看正在生成的内容或是否存在错误


在这里的论坛中有几个线程,我认为一些针对ASP(不是我的专长)的线程提供了一些解决方法。搜索flash、upload、sessionId和(ASP)

我觉得代码没问题

  • Firefox控制台是否显示任何错误

  • 您是否可以尝试使用相对于web根目录的路径
    /xyz/swfupload/upload.aspx
    ,以确保不会出现以不同方式解析相对路径的情况

  • 您是否1000%确定您的aspx文件实际上没有被调用?或者可能只是身份验证过程由于某种原因出错?您可以将日志或邮件命令放入ASPX文件的第一行吗

  • 上传过程本身是否启动并显示进度条

  • SWFUpload附带了错误处理程序挂钩。他们都没有抛出错误消息吗


欢迎来到SO。你能展示一些代码吗?您用来调用SWFUpload的生成代码会很好。我为用户访问以上载文件的页面添加了代码。这就是您所指的代码吗?我不认为这是重点,他将会话ID显式地传递给Flash,以便Flash可以将其传递给上载脚本。闪存本身不需要访问会话cookie。
<script type="text/javascript" src="../swfupload/swfupload.js"></script>

<script type="text/javascript" src="../js/handlers.js"></script>

<script type="text/javascript">
    var swfu;
    window.onload = function() {
        swfu = new SWFUpload({
            // Backend Settings
            upload_url: "../upload.aspx",
            post_params: {
                "ASPSESSID": "<%=Session.SessionID %>"
            },

            // File Upload Settings
            file_size_limit: "10 MB",
            file_types: "*.*",
            file_types_description: "All Files",
            file_upload_limit: 1,
            file_queue_limit: 1,
            //assume_success_timeout: 60,

            // Event Handler Settings - these functions as defined in Handlers.js
            //  The handlers are not part of SWFUpload but are part of my website and control how
            //  my website reacts to the SWFUpload events.
            file_queue_error_handler: fileQueueError,
            file_dialog_complete_handler: fileDialogComplete,
            upload_progress_handler: uploadProgress,
            upload_error_handler: uploadError,
            upload_success_handler: uploadSuccess,
            upload_complete_handler: uploadComplete,

            // Button settings
            button_image_url: "../Images/XPButtonNoText_160x22.png",
            button_placeholder_id: "spanButtonPlaceholder",
            button_width: 160,
            button_height: 22,
            button_text: '<span class="button">Upload File<span class="buttonSmall">(10 MB Max)</span></span>',
            button_text_style: '.button { font-family: Helvetica, Arial, sans-serif; font-size: 14pt; } .buttonSmall { font-size: 10pt; }',
            button_text_top_padding: 1,
            button_text_left_padding: 5,

            // Flash Settings
            flash_url: "../swfupload/swfupload.swf", // Relative to this file

            custom_settings: {
                upload_target: "divFileProgressContainer"
            },

            // Debug Settings
            debug: false
        });
    }
</script>