使用SWFUpload v2.2,Firefox 3,IE 8,Flash 10
在我的ASP.NET应用程序中,upload.aspx正在处理所有上传(我在设置对象中设置了正确的upload_url)。
任何人都可以告诉我为什么(在Firefox中)上传从未到过upload.aspx页面?
此处显示了用户访问以上传文件的页面的大部分代码(注意:正在使用母版页):
<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>
答案 0 :(得分:0)
很有可能因为这是在IE中而不是在Firefox中工作而你正在尝试进行一些身份验证(因此post_params:{ “ASPSESSID”:“&lt;%= Session.SessionID%&gt;” }) 你正在点击flash / firefox / opera“bug”/问题。在这种情况下,Flash上传器实际上是在自己的上下文中运行,而不是在共享上下文中运行,并且无法访问sessionID的cookie。
使用调试器检查并查看正在生成的内容或者是否有错误。
论坛中有几个主题,我认为一些ASP(不是我的专长)提供了一些解决方法。搜索flash,upload,sessionId和(ASP)
答案 1 :(得分:0)
代码看起来像o.k.对我来说。
Firefox控制台是否显示任何错误?
您是否可以尝试使用相对于网络根目录/xyz/swfupload/upload.aspx
的路径来确保不是以不同方式解析相对路径的情况?
您是否1000%确定您的aspx文件实际上没有被调用?或者可能是因为某种原因认证过程出错?您可以将日志或邮件命令放入ASPX文件的第一行吗?
上传过程本身是否会启动并显示进度条?
SWFUpload附带错误处理程序挂钩。他们都没有抛出错误信息吗?