1
이것을 취할 방향을 결정하는 데 도움이 필요합니다. 난 그냥 주어진 IP 및 포트에서 서버에 고정 원시 간단한 JSON 형식의 메시지를 보낼 프로그램이 필요합니다 다음 주어진 포트에서 응답을 듣고 다음 원시 응답을 콘솔에 쓸 필요가있다.원시 JSON을 보내고받는 방법은 무엇입니까?
JSON http 요청을 수행 할 때 몇 가지 주제가 있지만 제대로 된 것 같지는 않습니다. 이것은 적응하려고하는 코드입니다.
public static void send_json()
{
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("http://10.211.55.5:7752");
request.ContentType = "application/json; charset=utf-8";
request.Accept = "application/json";
request.Method = "POST";
using (StreamWriter writer = new StreamWriter(request.GetRequestStream()))
{
writer.Write("{\"request\": \"get_menu\", \"checksum\": \"\", \"table_state\": {\"table_id\": \"1\", \"waiter_id\": \"1001\"}}");
}
WebResponse response = request.GetResponse();
Stream stream = response.GetResponseStream();
string json = "";
using (StreamReader reader = new StreamReader(stream))
{
while (!reader.EndOfStream)
{
json += reader.ReadLine();
}
Console.Write(json);
}
}
게시 된 코드에 어떤 문제가 있습니까? – gunr2171
오프 주제이지만 문자열에 추가하는 대신'read.ReadToEnd()'를 사용할 수 있습니다. – Matthew
당신이 찾고있는 것이 100 % 명확하지는 않지만, 당신이 소켓을 찾으려는 것처럼 들립니다. 그것들은 훨씬 많은 오버 헤드가있는 HTTP 요청의 기본 기술입니다. 따라서 JSON을 머리글이나 기타없이 보내고 받기를 원한다면 (다시 말하면 원하는대로 들리 겠지만), JSON을 조사해보십시오. –