웹 소켓 이 서버 에 배치 되 어 연결 실패 문제 에 대한 분석 과 해결
얼마 전에 로 컬 에서 작성 한 웹 소켓 프로그램 이 서버 에 배치 되 었 을 때 오류 가 발생 했 습 니 다.한 동안 의 연 구 를 통 해 마침내 해결 되 었 습 니 다.그래서 본 고 는 여러분 에 게 분석 하고 해결 하 는 방법 을 제시 하 겠 습 니 다.다음은 더 이상 말 하지 않 겠 습 니 다.상세 한 소 개 를 해 보 겠 습 니 다.
로 컬 환경:JDK 1.8(32 위)Tomcat 8.0
서버 환경:JDK 1.8(64 위)Tomcat 8.0
로 컬 운행 은 정상이다.
서버 배치 가 실 행 될 때 페이지 를 열 고 웹 소켓 연결 에 실패 하고 닫 힌 코드 를 실행 할 수 있 습 니 다.그림:
문제 해결:
1.Tomcat 8 에 배 치 된 프로젝트 는 catalina.jar 와 websocket-api.jar 두 개의 가방 을 가 져 오지 마 십시오.Tomcat 8 은 이 두 개의 가방 을 가지 고 있 기 때 문 입 니 다.스스로 다시 가 져 오 면 충돌 합 니 다.
2.
websocket = new WebSocket("ws://192.168.10.119:8080/RMExpertView/test");
IP 는 서버 의 IP 주 소 를 쓰 고 localhost 를 쓰 지 마 십시오.3.원 격 서버 의 웹 소켓 프로그램 을 디 버 깅 할 때 로 컬 Tomcat 서버 를 닫 아야 합 니 다.
문제 분석
1.WebSocket 의 Ip 는 서버 IP 를 가리 켜 야 합 니 다.최종 적 으로 Jsp 의 코드 는 로 컬 브 라 우 저 에서 실 행 됩 니 다.연 결 된 IP 는 로 컬 을 가리 키 지 말고 서버 IP 여야 합 니 다.
2.가방 충돌 문제.특히 톰 캣 7 이 톰 캣 8 로 업그레이드 되 는 프로젝트 는 특히 주의해 야 한다.
3.웹 소켓 은 긴 연결 이기 때문에 로 컬 서비스 가 먼저 실행 되면 서버 의 웹 소켓 이 다시 달 립 니 다.웹 소켓 주소 의 표지 필드 가 같 기 때문에 서버 가 끊 어도 서버 의 ip 로 방문 해도 성공 할 수 있 습 니 다.방문 은 로 컬 Tomcat 서버 이기 때 문 입 니 다.
데모 다운로드
나 와 데 모 를 찾 는 사람 이 너무 많은 것 을 감안 하여 다운로드 링크 를 동봉 합 니 다http://xiazai.jb51.net/201710/yuanma/WebSocketDemo(jb51.net).rar
총결산
이상 은 이 글 의 전체 내용 입 니 다.본 논문 의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 참고 학습 가치 가 있 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주 셔 서 저희 에 대한 지지 에 감 사 드 립 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
iPad에서 WebSocket + Authorization이 연결되지 않음발단은 iPad에서의 개발 환경을 정비하려고 했기 때문이었습니다. VPS에 개발 환경을 넣을 수 있으면 편리하다고 생각해, 를 인스톨 해, 그대로는 누구라도 사용할 수 버리므로, Apache를 리버스 프록시로 해, ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.