views:

46

answers:

2

I am having a slight issue with the HttpWebRequest protocol, and I am wondering whether I should try a different approach or perhaps I am doing something wrong.

The issue I am having is this. I have a client/server which sends a HttpWebRequest to a server. The server receives this response, then runs a small utility which generates a file. The server then sends the file in the Response.OutputStream. The client is supposed to recieve this Stream and write it to a file. Sometimes I get a socket exception, other times the file that the client recieves is only 1kb, while the original file is around 29kb.

What I am trying to accomplish is this. There is two components: server 1 and server 2. server 1 hosts the web application. When a user requests a file using server 1, server 1 should send a command to server 2 to create the file and then server one should recieve this file. I am only worried about the interaction between the two servers so everything there should be automated.

I am wondering what would be the best approach to do this. HttpWebRequest works most of the time, but i want to make it more reliable. Would WebClient be able to do something like this? I assume using an ftp protocol would be a possibility aswell?

+2  A: 

The most likely cause: when you receive the response, you try to grab the whole thing using one read request. You need to keep calling read until you get to the end of the stream.

jdigital
A: 

Can you post the HttpWebRequest code snippet where you download the data?

feroze