HttpWebRequest. The remote server responded with an error: (500) Internal server error

I need help with HttpWebRequest in C #. Below lines of codes work fine for local IIS, but when I boot to the remote server, it starts giving me "The remote server returned an error: (500) Internal Server Error." I tried many options with the GET and POST method, but could not figure out what the problem was. Please read the code below and let me know what is wrong with this.

try
{
    string postData = "applicaitonid=abc&deviceid=xyz";
    string uri = System.Configuration.ConfigurationManager.AppSettings.Get("baseUrl") + System.Configuration.ConfigurationManager.AppSettings.Get("ABApiPath") + "ConfirmAppBinding/?" + postData;

    System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)WebRequest.Create(uri);
    request.Method = "POST"; // Set type Post
    //request.Method = "GET";
    request.UserAgent = Request.UserAgent.ToString();
    request.ContentType = @"application/json";
    request.MediaType = "application/json";
    request.Accept = "application/json";
    request.KeepAlive = false;
    request.ProtocolVersion = HttpVersion.Version11;
    //byte[] buffer = Encoding.GetEncoding("UTF-8").GetBytes(postData);
    request.Timeout = 500000;             //Increase timeout for testing

    Stream reqstr = request.GetRequestStream();
    //reqstr.Write(buffer, 0, buffer.Length);
    reqstr.Close();

    // Read Response
    var httpResponse = request.GetResponse();
    using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
    {
        JavaScriptSerializer jsSerializer = new JavaScriptSerializer();
        JsonMessage.message = streamReader.ReadToEnd();
        streamReader.Close();
    }
}
catch (WebException e)
{
    JsonMessage.message = e.Message;
    return Json(JsonMessage, JsonRequestBehavior.AllowGet);
}

As I said, I used the default GET method, but this did not solve the problem.

+4
source share
3 answers

Use this code to catch

catch (WebException e)
{
   string pageContent = new StreamReader(wex.Response.GetResponseStream()).ReadToEnd().ToString();
   return pageContent;
}

, .

+9

, nullvalue?

{ String postData = "applicaitonid=abc&deviceid=xyz"; 
}

{ String postData = "applicationid=abc&deviceid=xyz";  }
+1

You can use the try and catch block to find the root cause.

catch (WebException ex)
{
    string message = new StreamReader(ex.Response.GetResponseStream()).ReadToEnd();
}
0
source

All Articles