Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    58

    Controllo ricezione response

    ciao a tutti, ho una pagina asp che carica un file pdf e lo spedisce tramite "response.BinaryWrite" al client, volevo sapere se c'è qualche modo per sapere quando tutta la respons è stata ricevuta dal client...qualche idea?

  2. #2
    Credo che, essendo HTTP vs client, la certezza sul termine dell'invio la hai all'evento javascript onload() del tag BODY della tua pagina.

    Dovrebbe essere lo stesso principio delle immagini in una pagina html standard.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    58
    ci ho pensato, ma purtroppo non posso utilizzare la onload dato che la pagina in questione non è una html...

  4. #4
    La domana allora "sorge spontanea"...

    Che deve succedere una volta inviato il file al client?

    Cosa devi farne del file inviato al client??

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    58
    ti faccio vedere il codice...praticamente devo creare un file dat non appena finisco di scaricare un pdf


    'Recupero il file da scaricare
    Dim download

    ' Creo l'oggetto ADODB.Stream
    Set download = Server.CreateObject("ADODB.Stream")

    ' Apro la connessione e carico il file
    download.Type = 1
    download.Open
    download.LoadFromFile Server.MapPath("E010101.pdf")

    ' Aggiungo le intestazioni del tipo di file
    Response.buffer = true
    Response.AddHeader "Content-Disposition" , "inline;filename=test2.pdf"
    Response.ContentType = "application/pdf"
    Response.BinaryWrite download.read

    ' Un po di pulizia...
    download.Close
    Set download = Nothing

    response.flush

    set nuovo = server.createobject("Scripting.Filesystemobject")

    set file = nuovo.createTextFile(Server.Mappath("/mdb-database/completo.dat"))

    file.close()

    set file=nothing
    set nuovo = nothing

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    58
    non c'è nessuno che può darmi una mano?

  7. #7
    Ho provato a fare una cosa simile anche io...ma niente. Il problema è che il Flush è asincrono...

    Una alternativa c'è ma dipende dal perchè invii lil PDF in quel modo al client..

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    58
    Quello che voglio fare è un preload con un'immagine gif che aspetti il caricamento di un file pdf e che successivamente lo apra...solo che appena dopo un evento javascript la gif si blocca, ed ho pensato ad una soluzione con i frames...
    Quale sarebbe la tua alternativa?

  9. #9
    Io una cosa simile, ma con javascript, la utilizzo in un sito per verificare la velocità di banda fra il server i i vari client.
    Utilizzo uno script misto javascript/asp (preso dal BandWidth Meter) che visualizza un preload (un testo con una immagine) e di seguito, dopo aver effettuato il download del payload, fa il redirect vs un'altra pagina.

    Magari non è esattamente quello che ti serve, ma può darti idee in più...

    codice:
    <%
    header="CONTROLLO AMPIEZZA DI BANDA DISPONIBILE"
    footer = "Verifica Connessione"
    %>
    
    <html>
    
    <script language=JavaScript>
    <!--
    
    var message="";
    
    function clickIE() {if (document.all) {(message);return false;}}
    function clickNS(e) {if 
    (document.layers||(document.getElementById&&!document.all)) {
    if (e.which==2||e.which==3) {(message);return false;}}}
    if (document.layers) 
    {document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;}
    else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;}
    
    document.oncontextmenu=new Function("return false")
    // --> 
    </script>
    
    	<head>
    		<title>Bandwidth Meter</title>
    		<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    		<META HTTP-EQUIV="Expires" CONTENT="Fri, Jun 12 1981 08:20:00 GMT"> 
    		<META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 
    		<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
    		<link rel="stylesheet" href="style.css">
    	</head>
    
    	<body bgcolor="#FFFFFF" background="pic/globebg3.jpg" leftmargin="0" topmargin="0"
    		marginwidth="0" marginheight="0">
    		<center>
    			<table border="0" cellpadding="0" cellspacing="0">
      				<tr>
        				<td><%=header%></td>
        			</tr>
    			</table>
    			<table border=0 cellpadding=0 cellspacing=0>
    				<tr>
          				<td>
    
    
    
    
    
    <font size=+1>
    						Test in corso attendere...</font>
    				
    
    
    				<p align="center">
    [img]pic/clessidra.gif[/img]
    </p></td>
    				</tr>
    			</table>
    
    <script>
    <!--
    	time      = new Date();
    	starttime = time.getTime();
    // -->
    </script>
    
    <%
    
      NomeFile=Server.MapPath("payload.txt")
      dim file,fs,file1
      set fs=server.CreateObject("Scripting.FileSystemObject") 
      set file1=fs.GetFile(NomeFile)
      dimFile=file1.Size/1024
      set file=fs.OpenTextFile(NomeFile)
      Testo=file.ReadAll()	
      file.Close
      Set file=Nothing
      Set fs=Nothing
      Response.Write("")
    %>
    
    <script>
    <!--
    	time          = new Date();
    	endtime       = time.getTime();
    	if (endtime == starttime)
    		{
    		downloadtime = 0;
    		}
    	else
    	{
    		downloadtime = (endtime - starttime)/1000;
    	}
    
    	kbytes_of_data = <%=dimFile%>;
    	linespeed     = kbytes_of_data/downloadtime;
    	kbps          = Math.round((linespeed*8)*10*1.024)/10;
    	
    
    	document.location.href="results.asp?kbps="+kbps+"&footer=<%=request("footer")%>&kbyte="+kbytes_of_data+"&dltime="+downloadtime+"&ip=<%=request("ip")%>";
    // -->
    </script>
    <center>
    </body>
    </html>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.