En la barra de direcciones del navegador, ingrese directamente la ruta de URL de un archivo DOC o XLS o JPG, y el archivo se mostrará directamente en el navegador. En muchos casos, esperamos aparecer directamente en el cuadro de solicitud de descarga para que los usuarios los descarguen. ¿Qué debemos hacer? Aquí hay dos métodos:
1. Configure el IIS de su servidor y asigne los nombres de sufijo como DOC.
2. Establezca su ContentType cuando se envíe al cliente.
El método 2 se explica en detalle a continuación
Código de programa:
<% Respuesta.Buffer = True Response. Clare Dim Url Dim FSO, FL, FLSize Dim Dim Dim ObjStream, ContentType, Flname, ISRE, Url1 '************************************************************ '**************************************************************************************************************************************************************************************E es url = server.mappath ("/") & "/" & dname '******************************************************* if set fso = server.createObject ("scripting.filesSystemoStstemOn <% Set objstream = server.createObject ("adodb.stream") objstream.open objstream.type = 1 objStream.loadFiMFile URL SELECT Case Lcase (Right (Flname, 4)) Case ".Asf" ContentType = "Video/X-MS-ASF" Case ".Avi" ContentType = "Video/Avi Case". "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 ".Wav" ContentType = "Audio/wav". = "Audio/MPEG3" Case ".mpg", "mpeg" contentType = "video/mpeg" case ".rtf" contentType = "Application/rtf" Case ".htm", "Html" ContentType = "Text/Html" Case ". Respuesta.AddHeader "Disposición de contenido", "Adjunto; FileName = "& Flname Response.AddHeader" Content-Length ", FlSize Response.CharSet =" UTF-8 "Response.ContentType = ContentType Response.BinaryWrite objstream.read Response.flush Response.CLear () objstream.close set objstream = Nothing %>Guarde los siguientes elementos como descargar.asp y puede usar <aherf = "http://xxx.xxx.com/download.asp?n=file.doc"> ¡Descargar! </a> Para descargar file.doc en el mismo directorio!
Pero aquí hay un problema de que no es seguro escribir directamente la ruta de archivo.
Si agrega un juicio al comienzo de este programa:
if instrer (request.serverVariAnbles ("http_referer"), "http: // su nombre de dominio") = 0 luego respuesta.end end if siPuede evitar que otras personas roben sus enlaces.