Hi,
I'm using a c# app to download zipped XML data from a 3rd party. All is
good, but the XML is generated on the remote machine at the time of request
(hence the huge timeout), and when it sends me the file, it has an error
message appended to the beginning:
˙ž<br />
<b>Warning</b>: HTTP_USER_AGENT variable is not set, cannot determine user
agent name in <b>/home/sites/site2/web/check_auth.inc.php</b> on line
<b>19</b><br />
I can successfully get the file if I do it manually through IE, so it's not
a problem on the client end. I've tried adding the HTTP_USER_AGENT header
to the request object, but no luck getting rid of it. How do I add the
correct request headers here? I've put the code (which is pretty simple)
below.
Thanks in advance,
Dunc
---/ snip /---
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(strRemoteURI);
// Set some reasonable limits on resources used by this request
request.MaximumAutomaticRedirections = 4;
request.MaximumResponseHeadersLength = 64;
request.Timeout = 600000;
// Set credentials to use for this request.
request.Credentials = CredentialCache.DefaultCredentials;
request.Headers.Add("HTTP_USER_AGENT", "IE");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
// Get the stream associated with the response.
Stream receiveStream = response.GetResponseStream();
// Pipes the stream to a higher level stream reader with the required
encoding format.
StreamReader readStream = new StreamReader (receiveStream,
System.Text.Encoding.Unicode);
StreamWriter writeStream = new StreamWriter("_" + strFileName, false,
System.Text.Encoding.Unicode);
writeStream.Write(readStream.ReadToEnd());
writeStream.Flush();
response.Close();
readStream.Close();
writeStream.Close();