> Java > java지도 시간 > 본문

내 Java 소켓 클라이언트가 서버 응답을 받지 못하는 이유는 무엇입니까?

Barbara Streisand
풀어 주다: 2024-11-09 07:13:01
원래의
420명이 탐색했습니다.

Why Is My Java Socket Client Not Receiving Server Replies?

Java 소켓: 클라이언트 요청에 대한 응답하지 않는 서버 응답 해결

제시된 시나리오에서 클라이언트는 서버에 문자열을 성공적으로 보내며 다음과 같은 메시지를 표시합니다. 서버가 처리하고 응답합니다. 그러나 클라이언트가 서버의 응답을 받지 못했습니다.

근본 원인:
이 문제는 줄 끝 문자("rn")가 끝에 추가되지 않았기 때문에 발생합니다. 출력 스트림에 기록된 문자열입니다. 이는 클라이언트와 서버 간의 통신을 방해하여 클라이언트가 서버의 응답을 알아채지 못하게 만듭니다.

해결책:
이 문제를 해결하려면 "rn"이 다음에 추가되는지 확인하세요. 보내기 전에 문자열을 삭제하세요.

클라이언트 수정:

string = "end";
out.write(string + "\r\n");
out.flush();
로그인 후 복사

서버 수정:

out.write("to end" + "\r\n");
out.flush();
out.close();
System.out.println("end");
로그인 후 복사

줄 종료 문자를 추가하면 클라이언트와 서버 간의 통신 흐름이 향상됩니다. 클라이언트가 서버의 응답을 인식할 수 있게 되므로 클라이언트 측에서 원하는 인쇄 기능을 얻을 수 있습니다.

위 내용은 내 Java 소켓 클라이언트가 서버 응답을 받지 못하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿