>

http를 통해 wss 프로토콜을 가질 수 있습니까? ws는 http와 함께 작동하는 포럼에서 읽었지만 wss는 https에서만 작동합니다. 맞습니까?

localhost의 늪에서 테스트하려고하는데 작동하지 않습니다.

  • 답변 # 1

    ws   http 를 사용하도록 WebSocket 클라이언트 라이브러리에 지시합니다.  WebSocket 서버에 연결합니다. 마찬가지로, wss   https 를 사용하도록 WebSocket 클라이언트 라이브러리에 지시합니다.  WebSocket 서버에 연결합니다. 그냥 "ws protocol"과 "wss protocol"은 이상한 단어입니다. "WebSocket 프로토콜"이 올바른 단어입니다. WebSocket 프로토콜은 일반 HTTP 연결 ( http ) 모두에서 사용될 수 있습니다 ) 및 보안 HTTP 연결 ( https ) ).

    WebSocket 클라이언트와 WebSocket 서버 간의 통신은 일반 HTTP 프로토콜로 시작합니다. WebSocket 통신을 시작하기 위해 WebSocket 클라이언트는 아래와 같은 요청을 WebSocket 서버에 보냅니다 (이 내용은 RFC 6455, 1.2. 프로토콜 개요에서 발췌 한 것입니다).

    GET /chat HTTP/1.1
    Host: server.example.com
    Upgrade: websocket
    Connection: Upgrade
    Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
    Origin: http://example.com
    Sec-WebSocket-Protocol: chat, superchat
    Sec-WebSocket-Version: 13
    
    

    보다시피, 이것은 정상적인 HTTP GET 입니다  의뢰. WebSocket 서버는 보안되지 않은 포트 ( http )에서 이러한 종류의 요청을 기다릴 수 있습니다 , 80이 기본값) 또는 보안 포트 ( https ) , 443이 기본값입니다. WebSocket 서버에 달려 있습니다.

    사용중인 WebSocket 서버가 보안되지 않은 포트에서 요청을 기다리는 경우 ws 를 전달하십시오.  사용중인 WebSocket 클라이언트 라이브러리에. 그렇지 않으면 WebSocket 서버가 보안 포트에서 요청을 기다리는 경우 wss 를 전달하십시오.  WebSocket 클라이언트 라이브러리에.

    WebSocket 클라이언트 라이브러리의 일부 구현은 ws 뿐만 아니라  그리고 wss  뿐만 아니라 http  그리고 https  개발자의 편의를 위해서만.

    "WSS on http"는 이상한 단어입니다. 반면에 "http의 WebSocket 프로토콜"과 "https의 WebSocket 프로토콜"은 의미가 있습니다.

  • 이전 java - 기본 종료시 TabPane에서 탭 소비
  • 다음 java - -DpropertyName = propertyValue를 사용하여 사용자가 전달한 특성 가져 오기