Hente fil fra anden server
HejsaJeg har et problem med at få nedenstående funktion til at virke. Det underlige er at jeg ikke får fejl men får en standard HTTP Error 404. Og jeg har slået "venlige fejl" fra i IE, så der skulle ikke ligge der.
Function Gemfil(URL)
const adTypeBinary = 1
const adModeReadWrite = 3
const adSaveCreateOverwrite = 2
' Finder navnet på filen
Urlarr = split(URL, "/")
Navn = Urlarr(ubound(Urlarr))
'response.write URL & "<br>"
'response.write Navn & "<br>"
'Response.write Server.MapPath("/_temp/" & Navn & "") & "<br>"
Dim whttp, stream
Set whttp = Server.CreateObject("WinHttp.WinHttpRequest.5.1")
whttp.Open "GET", URL, False
whttp.Send
Set stream = Server.CreateObject("ADODB.Stream")
stream.Type = adTypeBinary
stream.Mode = adModeReadWrite
stream.Open
stream.Write(whttp.ResponseBody)
stream.SaveToFile Server.MapPath("/_temp/" & Navn & ""),adSaveCreateOverwrite
stream.Close
Set stream = Nothing
Set whttp = Nothing
End Function
Hvis jeg i stedet for hele delen med stream indsætter følgende:
' Giv filen et filnavn
Response.AddHeader "Content-Disposition", Navn
' Fortæl browseren hvad for en type filen er
Response.ContentType = "image/jpg"
' Udskriv billedets indhold til browseren
Response.BinaryWrite whttp.ResponseBody
Så får jeg fint udskrevet billedet til browseren. Jeg vurder derfor at fejlen ligger i stream delen.
På forhånd tak.
