|
|
|||||||||
|
|||||||||
|
|||||||||
| |
|||
| |||||||||
![]() |
|
|
«
Previous Thread
|
Next Thread
»
|
Thread Tools | Search this Thread | Display Modes |
|
#1
|
|||
|
|||
|
ASP XMLHTTP Download timeout help!!
I have been using an ASP page to retrieve files from other websites and send them to my clients. The script is as following:
<% URL=Request.Querystring("URL") Response.Buffer = True Dim objXMLHTTP, xml Set xml = Server.CreateObject("Microsoft.XMLHTTP") xml.Open "GET", URL, False For FNC=1 to len(URL) If mid(URL,FNC,1)="/" Then STN=FNC ElseIf mid(URL,FNC,1)="\" Then STN=FNC End If Next xml.Send 'This line takes too long for big files FN=mid(URL,STN+1,len(URL)-STN) FND = "attachment;filename=" & FN ' Add a header to give it a file name: Response.AddHeader "Content-Disposition", FND ' Specify the content type to tell the browser what to do: Response.ContentType = "application/zip" ' Binarywrite the bytes to the browser Response.BinaryWrite xml.responseBody URL="" Set xml = Nothing End If %> Now, the script works by loading the entire requested file into the buffer on the server, and then send the buffer's content to the client. the script works fine on small files but when dealing with bigger files, there are two problems. Firstly, the buffer might not be big enough to hold a file of for example 40MB, which causes error. And secondly(the problem that I am having now) the problem is that for slightly bigger files, although the buffer can hold the whole file, the command: xml.send takes too long to retrieve the file into the buffer before the asp page can give responses. this causes an error in the Internet broswer saying "connection timeout" Is there anyone knows anyway I can make the data transfer "on the fly" or may be just stop the client's broswer saying "Connection Timeout"? |
![]() |
| Viewing: Dev Articles Community Forums > Programming > ASP Development > ASP XMLHTTP Download timeout help!! |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|
|
|
|