Na barra de endereços do navegador, digite diretamente o caminho da URL de um arquivo DOC ou XLS ou JPG, e o arquivo será exibido diretamente no navegador. Em muitos casos, esperamos exibir diretamente a caixa Prompt de download para que os usuários baixem. O que devemos fazer? Aqui estão dois métodos:
1. Configure o IIS do seu servidor e mapeie os nomes do sufixo como o DOC.
2. Defina seu contentType ao enviar para o cliente.
O método 2 é explicado em detalhes abaixo
Código do programa:
<% Response.Buffer = True Response.Clear Dim Url Dim FSO, FL, Flsize Dim Dname Dim ObjStream, ContentType, Flname, Isre, Url1 '*************************************** '*********************************** é url = server.mappath ("/") & "/" & dname '***************************************************** objStream = server.createObject ("adodb.stream") objStream.open objStream.type = 1 objStream.LoadFromFile Url Selecione Case lcase (direita (FLName, 4)). "Application/msword" case ".zip" contentType = "Application/Zip" case ".xls" contentType = "Application/vnd.ms-excel" case ".gif" contentType = "Image/gif" case ".jpg", "jpeg" contentType = "Image/jpeg" Case ". = "Audio/mpeg3" case ".mpg", "mpeg" contentType = "video/mpeg" case ".rtf" contentType = "Application/rtf" case ".htm", "html" contentType = "text/html" case ".txt"/contenttype = " Response.AddHeader "Disposição de conteúdo", "anexo; filename = "& flname Response.addheader" Length-length ", Flsize Response.Charset =" UTF-8 "Response.ContentType = ContentType Response.BinaryWrite ObjStream.Read Response.flush Response.Clear () objStream.close Set = NOTHE %>Salve os seguintes itens como download.asp e você pode usar <aherf = "http://xxx.xxx.com/download.asp?n=file.doc"> download! </a> para baixar o arquivo.doc no mesmo diretório!
Mas há um problema aqui que não é seguro escrever diretamente o caminho do arquivo.doc no URL, portanto a solução deve ser armazenar o caminho File.doc no banco de dados e obter o caminho depois de pesquisar no banco de dados
Se você adicionar um julgamento no início deste programa:
Se Instr (request.Servervariables ("http_referer"), "http: // seu nome de domínio") = 0 então Response.END END SEMPode impedir que outras pessoas roubem seus vínculos.