Hai trovato ciò che cercavi?

Hai trovato ciò che cercavi?

Clicca sui banner

ci vogliono al massimo 3 secondi.



venerdì 23 novembre 2012

Salvare un file remoto sul server in ASP classico

Una funzione per scaricare immagini e file remoti sul proprio server, ad esempio avendo l'URL di un'immagine è possibile copiarla in una cartella del server.
è possibile salvare ogni tipo di file accessibile dal web.


<%


Function scaricaloSulServer(URLFile, pathAssoluto)

Set objXmlHTTP = Server.CreateObject("Microsoft.XMLHTTP")

objXmlHTTP.Open "GET", URLFile, False
objXmlHTTP.Send

Dim objStream
Set objStream = Server.CreateObject("ADODB.Stream")
With objStream

.Type = 1
.Open
.Write objXmlHTTP.ResponseBody
.SaveToFile pathAssoluto & "/" & Mid(URLFile, InstrRev(URLFile, "/")), 2

.Close
End WIth

Set objXmlHTTP = Nothing
Set objStream = Nothing

End Function


%>

objXmlHTTP.Open "GET", URLFile, False

richiediamo il file attraverso una richiesta XMLHTTP e la risposta la trattiamo come uno streaming di dati, che salviamo:

.Write objXmlHTTP.ResponseBody
.SaveToFile pathAssoluto & "/" & Mid(URLFile, InstrRev(URLFile, "/")), 2

usiamo le funzioni Mid e instrRev per prendere il nome del file, in pratica di tutto il path di un file, che potrebbe essere:
http://www.nomedominio.com/nomefile.jpg prendiamo tutto quello che è a destra del simbolo "/" più a destra, ovvero:
"nomefile.jpg".

Volendo specificare un nome nuovo, è possibile cambiare la riga del savefile così:

.SaveToFile pathAssoluto & "/" & nuovoNomeFile, 2

chiaramente dovremmo definire nuovoNomeFile, magari passandolo alla funzione oppure creandolo. Per passarlo alla funzione è necessario definirlo in cima:

Function scaricaloSulServer(URLFile, pathAssoluto, nuovoNomeFile)

Nessun commento:

Posta un commento