http download file name

后端 未结 3 1328
南笙
南笙 2020-12-02 19:55

May i know how to assign a file-name to a a-href file download.

get-file&l         


        
相关标签:
3条回答
  • 2020-12-02 20:37

    You need to append the HTTP response header "Content-Disposition"

    Response.AppendHeader("content-disposition", "attachment; filename=\"" + fileName +"\"");
    
    0 讨论(0)
  • The HTTP header Content-Disposition allows you to suggest a file name.

    The Content-Disposition response header field […] can be used to attach additional metadata, such as the filename to use when saving the response payload locally.

    If you look at the BNF you'll see that the filename is specified as a quoted-string:

    quoted-string = ( <"> *(qdtext | quoted-pair ) <"> )

    This would be a valid example:

    Content-Disposition: attachment; filename="fname.ext"
    

    Please note that single quotes ' are not valid. If you need to include quotes (") in your filename you can use \". However RFC-6266 suggests to avoid including quotes:

    Avoid including the "\" character in the quoted-string form of the filename parameter, as escaping is not implemented by some user agents, and "\" can be considered an illegal path character.

    0 讨论(0)
  • 2020-12-02 20:46

    In modern browsers you can also use download attribute on link tag:

    <a href="http://localhost:8080/couch/getFile?dbName=xxx&file=test.xml" download="test.xml">
        get-file
    </a>
    

    You can check it's support on Can I use

    0 讨论(0)
提交回复
热议问题