The server committed a protocol violation. Section=ResponseStatusLine
Hi,
I got file transfer token but when I am sending the actual data of file using the following Api
sendFile_realm = relayIP + "/relay"; I got " The server committed a
protocol violation. Section=ResponseStatusLine" error.
here is the code
public void sendFile()
{
IPAddress[] addresslist = Dns.GetHostAddresses(howtogeek);
relayIP = addresslist[0].ToString();
sendFile_realm = relayIP + "/relay";
url = "http://" + sendFile_realm + "?&token=" + fileToken + "&sender=" + primaryLoginId + "&reeceiver=" + contactID
+ "&sid=" + sessionId + "&oauth_consumer_key=" + oauth_consumer_key + "&oauth_signature_method=" +
oauth_signature_method + "&oauth_nonce=" + oauth_nonce + "&oauth_timestamp=" + oauth_timestamp
+ "&oauth_signature=" + oauth_signature + "&oauth_version=" + oauth_version + "&oauth_token=" + auth_token;
byte[] fileArr = GetFileByteArray(filename);
UploadFile(url, fileArr);
}
private byte[] GetFileByteArray(string filename)
{
FileStream oFileStream = new FileStream(filename, FileMode.Open, FileAccess.Read);
// Create a byte array of file size.
byte[] FileByteArrayData = new byte[oFileStream.Length];
//Read file in bytes from stream into the byte array
oFileStream.Read(FileByteArrayData, 0, System.Convert.ToInt32(oFileStream.Length));
//Close the File Stream
oFileStream.Close();
return FileByteArrayData; //return the byte data
}
public string UploadFile(string URL, byte[] FileData)
{
string Response = null;
HttpWebRequest WebReq = null;
HttpWebResponse WebRes = null;
StreamReader StreamResponseReader = null;
Stream requestStream = null;
try
{
WebReq = (HttpWebRequest)WebRequest.Create(URL);
WebReq.Method = "POST";
WebReq.Accept = "*/*";
WebReq.ContentType = "text/plain";
WebReq.ContentLength =FileData.Length;
WebReq.UserAgent = "Mozilla/5.0";
requestStream = WebReq.GetRequestStream();
requestStream.Write(FileData, 0, FileData.Length);
requestStream.Flush();
requestStream.Close();
WebRes = (HttpWebResponse)WebReq.GetResponse();
StreamResponseReader = new StreamReader(WebRes.GetResponseStream(), Encoding.UTF8);
Response = StreamResponseReader.ReadToEnd();
}
catch(WebException ex)
{
MessageBox.Show(ex.Message.ToString());
Console.WriteLine (ex.Message .ToString ());
}
return Response;
}
Please suggest me why it's coming.
Thanks
Priya
by
0 Replies