• 附件下载直接显示另存为对话框并保存原有中文文件名的解决办法


    一直都很想做这个功能,但没有时间去整理这次客户要求一定要做,只能做了一下。

    原理其实很简单,就是修改一下HTTP的响应头信息就可以了。

    因为我原来设计的时候就把附件的处理做成一个用户组件,所以修改起来也很简单,只要增加一个下载的界面及修改用户组件的内容即可。

    具体步骤:

    1、把原来显示附件的链接地址统一改为AttachDownload.aspx?attachid=xxxx

    2、添加一个AttachDownload.aspx页面,具体的代码如下:

      

    Code

    需要注意的地方:

    1、中文文件名最好用Server.UrlEncode进行处理一下。这样会安全一些,有一些IE客户端有把IE选项里的高级“总是以UTF-8发送URL钩上,如果没有钩上,不加这句话可能会出现乱码的情况,如果有钩上可能会正常。

    2、.net发布的时候最好把bin下的dll删除掉再把新的复制上去。这次客户更新时候就是用覆盖的方式,造成没有及时更新,让我找了好久都没有找到问题所在。

  • 相关阅读:
    【书目20200917】影响力思维
    Spring AOP +自定义注解 + Spel表达式 实现审计日志
    SPRING BOOT 注解之OBJECTPROVIDER源码追踪
    Activiti~相关概念
    ELK~fluentd多行日志的收集
    k8s~向etc/hosts里添加内容
    maven~本地仓库的指定
    ssh~ Access denied问题解决
    MySQL如何绕过授予information_schema中对象时报ERROR 1044(4200)错误
    Zabbix如何监控SQL Server服务状态
  • 原文地址:https://www.cnblogs.com/liubiqu/p/1261737.html
Copyright © 2020-2023  润新知