zoukankan      html  css  js  c++  java
  • 使用swfupload小经验

    SWFUpload是一个客户端文件上传工具,如果传统的文件上传方式不能满足你的需求,那么可以试试看这个咯。

    swfupload的功能:

    • 在文件选择对话框中能够进行文件多选(当然还可以设置成单选)
    • 可以设置上传对话框中显示的文件类型和说明
    • 页面无刷新的上传(使用ajax方式post文件数据)
    • 提供上传进度的事件回调,实时显示上传进度(这个比较cool,无需频繁调用服务端代码获取上传进度哦)
    • 良好的浏览器兼容性
    • 采用了命名空间以兼容其它JS的库 (例如 jQuery, Prototype, 等等)
    • 对FLASH8和FLASH9播放器的支持

    这里是swfupload的中文使用帮助,感谢译者的辛勤工作。

    我第一次使用swfupload的时候,发现它和mootools的1.10版本有冲突:当IE7刷新或者关闭的时候会导致swfupload组件脚本出错,换用最新的mootools之后正常。

    另外一个问题就是session,很多时候接收文件上传数据的代码需要根据当前session来进行权限处理。在IE中没什么问题,在firefox中会无法获取session,原因应该是flash处理cookie的方式有所不同,导致在firefox中swfupload无法post当前用户的cookie信息到服务端。解决方式也比较简单,就是自己获取cookie信息随着文件一并上传(flash9支持)即可。

    asp.net中可以直接引用swfupload提供的global.asax来处理session信息,你只需要在创建swfupload对象的时候添加如下代码即可:

     1         var swfu;
     2         function initswfu()
     3         {
     4             swfu = new SWFUpload({
     5                 upload_url : "<%=Page.ResolveClientUrl("~/swfupload/upload.aspx")%>",
     6                 flash_url : "<%=Page.ResolveClientUrl("~/swfupload/swfupload_f9.swf")%>",
     7                 file_size_limit : "204800",
     8                 file_types : "*.rar;*.zip",
     9                 file_types_description : "打包文件",
    10                 post_params : {
    11                     "ASPSESSID" : "<%=Session.SessionID %>",
    12                     "AUTHID" : "<%=Request.Cookies[FormsAuthentication.FormsCookieName].Value%>"
    13                     },
    14 

    其中ASPSESSID是用户的sessionid,AUTHID是FormsAuthentication认证信息,如果你不用FormsAuthentication也可以去掉12行,当然如果你需要cookie中的其他自定义信息,就在这里添加并需要修改global.asax了。

  • 相关阅读:
    Java RunTime Environment (JRE) or Java Development Kit (JDK) must be available in order to run Eclipse. ......
    UVA 1597 Searching the Web
    UVA 1596 Bug Hunt
    UVA 230 Borrowers
    UVA 221 Urban Elevations
    UVA 814 The Letter Carrier's Rounds
    UVA 207 PGA Tour Prize Money
    UVA 1592 Database
    UVA 540 Team Queue
    UVA 12096 The SetStack Computer
  • 原文地址:https://www.cnblogs.com/xwing/p/1292174.html
Copyright © 2011-2022 走看看