1
질문에 따라, 나는 POST
json에 http하지만 GET
사용할 때 출력이 지 않습니다.HttpWebRequest 게시하지 게시
나는 POST
json을 시도한 다음 스트림을 닫습니다. 나는 그 대답에 신경 쓸 필요가 없다. 내 POST
이 작동하는지 확인하려면 GET
이라고 적었습니다.
아래 코드는 POST
입니다.
var httpWebRequest = (HttpWebRequest)WebRequest.Create("http://localhost:1234/xxxxx/xxxx");
httpWebRequest.ContentType = "application/json";
httpWebRequest.Method = "POST";
using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
string eventData = "temp string";
string jsonEvent = JsonConvert.SerializeObject(eventData, Formatting.None, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, Formatting = Formatting.Indented });
streamWriter.Write(jsonEvent);
}
var httpWebResponse = (HttpWebResponse)httpWebRequest.GetResponse(); //getting "The remote server returned an error:" here
using (var streamReader = new StreamReader(httpWebResponse.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
}
다음은 내가 MSDN에서 가져온 GET
내 코드입니다.
WebRequest request = WebRequest.Create("http://localhost:1234/xxxxx/xxxx");
WebResponse response = request.GetResponse();
Console.WriteLine(((HttpWebResponse)response).StatusDescription);
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseFromServer = reader.ReadToEnd();
Console.WriteLine(responseFromServer);
reader.Close();
response.Close();
'POST '에 응답을 추가해야합니까? – active92
@ active92 : 무슨 뜻인지 모르겠다. 당신의 코드는 * 클라이언트 코드이다. 응답을 추가하는 것은 귀하에게 달려 있습니다. 그러나 당신이'GetRespose()'를 부를 때까지는 요청을하지 않을 것입니다. 서버가 빈 응답 본문을 반환하는 것이 좋습니다. –
응답 코드를 추가했으나 원격 서버가 오류를 반환했습니다 : ' – active92