401 Error on RequestStream

  • Thread starter Thread starter Luis Esteban Valencia
  • Start date Start date
L

Luis Esteban Valencia

Hello. I am making the practice of chapter 6. Biztalk Unleashed its about
sending an HTTP request with a c# webform.

I got this error
Unable to complete web request. Web Exception error: Error en el servidor
remoto: (401) No autorizado.


This is the code of the submit button.


private void btnsubmit_Click(object sender, System.EventArgs e)

{

string requestLocation =
"http://localhost:90/HTTPSender/BTSHTTPReceive.dll";


Status.Text = "";

XmlDocument xmlDocument = new XmlDocument();

xmlDocument.PreserveWhitespace = true;

XmlNode tempXmlNode = xmlDocument.CreateNode(XmlNodeType.Element,
"Activity", "http://que.activity");

xmlDocument.AppendChild(tempXmlNode);

tempXmlNode = xmlDocument.CreateNode(XmlNodeType.Attribute, "type", "");

tempXmlNode.Value = TypeList.SelectedItem.Text;

xmlDocument.DocumentElement.Attributes.Append( (XmlAttribute)tempXmlNode);

tempXmlNode = xmlDocument.CreateNode(XmlNodeType.Element, "Location", "");

tempXmlNode.InnerText = Location.Text;

xmlDocument.DocumentElement.AppendChild(tempXmlNode);

tempXmlNode = xmlDocument.CreateNode(XmlNodeType.Element, "Timestamp", "");

DateTime now = DateTime.Now;

tempXmlNode.InnerText = now.ToString("s");

xmlDocument.DocumentElement.AppendChild(tempXmlNode);

tempXmlNode = xmlDocument.CreateNode(XmlNodeType.Element, "Notes", "");

tempXmlNode.InnerText = Notes.Text;

xmlDocument.DocumentElement.AppendChild(tempXmlNode);

try

{

HttpWebRequest request = (HttpWebRequest)
HttpWebRequest.Create(requestLocation);

request.Method = "POST";

ASCIIEncoding encoding = new ASCIIEncoding();

byte[] requestData = encoding.GetBytes(xmlDocument.OuterXml);

request.ContentType="application/x-www-form-urlencoded";

request.ContentLength = xmlDocument.OuterXml.Length;

Status.Text += "Submitting activity message";

Stream requestStream = request.GetRequestStream(); ---------->ERROR HERE

requestStream.Write(requestData,0,requestData.Length);

requestStream.Flush();

requestStream.Close();

HttpWebResponse response = (HttpWebResponse) request.GetResponse();

StreamReader responseData = new StreamReader( response.GetResponseStream());

Status.Text = System.Web.HttpUtility.HtmlEncode( responseData.ReadToEnd()) +
"<br>";

}

catch (WebException wex)

{

Status.Text = "Unable to complete web request. Web Exception error: " +
wex.Message;

}


}



Thanks
 
Luis said:
Hello. I am making the practice of chapter 6. Biztalk Unleashed its
about sending an HTTP request with a c# webform.

I got this error
Unable to complete web request. Web Exception error: Error en el
servidor remoto: (401) No autorizado.
[...]

You're sending neither a NetworkCredential object nor any form data
that may authenticate you.

Cheers,
 
I already changed it
and added this line
request.Credentials = new NetworkCredential("btservices", "xxxxx", "se");



after it I got this message



Unable to complete web request. Web Exception error: Error en el servidor
remoto: (405) Método no permitido.

Joerg Jooss said:
Luis said:
Hello. I am making the practice of chapter 6. Biztalk Unleashed its
about sending an HTTP request with a c# webform.

I got this error
Unable to complete web request. Web Exception error: Error en el
servidor remoto: (401) No autorizado.
[...]

You're sending neither a NetworkCredential object nor any form data
that may authenticate you.

Cheers,
 
Luis said:
I already changed it
and added this line
request.Credentials = new NetworkCredential("btservices", "xxxxx",
"se");



after it I got this message

Does the problem still exist? If it does, the web application uses
forms authentication, in which case you need to post your credentials
as form data.

Cheers,
 
Back
Top