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