org.springframework.web.socket.sockjs.client

Class AbstractXhrTransport

  • java.lang.Object
    • org.springframework.web.socket.sockjs.client.AbstractXhrTransport
    • Field Detail

      • PRELUDE

        protected static final java.lang.String PRELUDE
      • logger

        protected final Log logger
    • Constructor Detail

      • AbstractXhrTransport

        public AbstractXhrTransport()
    • Method Detail

      • getTransportTypes

        public java.util.List<TransportType> getTransportTypes()
        Description copied from interface: Transport
        Return the SockJS transport types that this transport can be used for. In particular since from a client perspective there is no difference between XHR and XHR streaming, an XhrTransport could do both.
        Specified by:
        getTransportTypes in interface Transport
      • setXhrStreamingDisabled

        public void setXhrStreamingDisabled(boolean disabled)
        An XhrTransport can support both the "xhr_streaming" and "xhr" SockJS server transports. From a client perspective there is no implementation difference.

        Typically an XhrTransport is used as "XHR streaming" first and then, if that fails, as "XHR". In some cases however it may be helpful to suppress XHR streaming so that only XHR is attempted.

        By default this property is set to false which means both "XHR streaming" and "XHR" apply.

      • isXhrStreamingDisabled

        public boolean isXhrStreamingDisabled()
        Whether XHR streaming is disabled or not.
        Specified by:
        isXhrStreamingDisabled in interface XhrTransport
      • executeInfoRequest

        public java.lang.String executeInfoRequest(java.net.URI infoUrl,
                                                   @Nullable
                                                   HttpHeaders headers)
        Description copied from interface: InfoReceiver
        Perform an HTTP request to the SockJS "Info" URL. and return the resulting JSON response content, or raise an exception.

        Note that as of 4.2 this method accepts a headers parameter.

        Specified by:
        executeInfoRequest in interface InfoReceiver
        Parameters:
        infoUrl - the URL to obtain SockJS server information from
        headers - the headers to use for the request
        Returns:
        the body of the response
      • executeInfoRequestInternal

        protected abstract ResponseEntity<java.lang.String> executeInfoRequestInternal(java.net.URI infoUrl,
                                                                                       HttpHeaders headers)
      • executeSendRequest

        public void executeSendRequest(java.net.URI url,
                                       HttpHeaders headers,
                                       TextMessage message)
        Description copied from interface: XhrTransport
        Execute a request to send the message to the server.

        Note that as of 4.2 this method accepts a headers parameter.

        Specified by:
        executeSendRequest in interface XhrTransport
        Parameters:
        url - the URL for sending messages.
        message - the message to send