类 WebSocketHttpRequestHandler
- java.lang.Object
- org.springframework.web.socket.server.support.WebSocketHttpRequestHandler
- 所有已实现的接口:
Aware
,Lifecycle
,ServletContextAware
,HttpRequestHandler
public class WebSocketHttpRequestHandler extends Object implements HttpRequestHandler, Lifecycle, ServletContextAware
AHttpRequestHandler
for processing WebSocket handshake requests.This is the main class to use when configuring a server WebSocket at a specific URL. It is a very thin wrapper around a
WebSocketHandler
and aHandshakeHandler
, also adapting theHttpServletRequest
andHttpServletResponse
toServerHttpRequest
andServerHttpResponse
, respectively.- 从以下版本开始:
- 4.0
- 作者:
- Rossen Stoyanchev
构造器概要
构造器 构造器 说明 WebSocketHttpRequestHandler(WebSocketHandler wsHandler)
WebSocketHttpRequestHandler(WebSocketHandler wsHandler, HandshakeHandler handshakeHandler)
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 protected WebSocketHandler
decorate(WebSocketHandler handler)
Decorate theWebSocketHandler
passed into the constructor.HandshakeHandler
getHandshakeHandler()
Return the HandshakeHandler.List<HandshakeInterceptor>
getHandshakeInterceptors()
Return the configured WebSocket handshake request interceptors.WebSocketHandler
getWebSocketHandler()
Return the WebSocketHandler.void
handleRequest(HttpServletRequest servletRequest, HttpServletResponse servletResponse)
Process the given request, generating a response.boolean
isRunning()
Check whether this component is currently running.void
setHandshakeInterceptors(List<HandshakeInterceptor> interceptors)
Configure one or more WebSocket handshake request interceptors.void
setServletContext(ServletContext servletContext)
Set theServletContext
that this object runs in.void
start()
Start this component.void
stop()
Stop this component, typically in a synchronous fashion, such that the component is fully stopped upon return of this method.
构造器详细资料
WebSocketHttpRequestHandler
public WebSocketHttpRequestHandler(WebSocketHandler wsHandler)
WebSocketHttpRequestHandler
public WebSocketHttpRequestHandler(WebSocketHandler wsHandler, HandshakeHandler handshakeHandler)
方法详细资料
decorate
protected WebSocketHandler decorate(WebSocketHandler handler)
Decorate theWebSocketHandler
passed into the constructor.By default,
LoggingWebSocketHandlerDecorator
andExceptionWebSocketHandlerDecorator
are added.- 从以下版本开始:
- 5.2.2
getWebSocketHandler
public WebSocketHandler getWebSocketHandler()
Return the WebSocketHandler.
getHandshakeHandler
public HandshakeHandler getHandshakeHandler()
Return the HandshakeHandler.
setHandshakeInterceptors
public void setHandshakeInterceptors(@Nullable List<HandshakeInterceptor> interceptors)
Configure one or more WebSocket handshake request interceptors.
getHandshakeInterceptors
public List<HandshakeInterceptor> getHandshakeInterceptors()
Return the configured WebSocket handshake request interceptors.
setServletContext
public void setServletContext(ServletContext servletContext)
从接口复制的说明:ServletContextAware
Set theServletContext
that this object runs in.Invoked after population of normal bean properties but before an init callback like InitializingBean's
afterPropertiesSet
or a custom init-method. Invoked after ApplicationContextAware'ssetApplicationContext
.- 指定者:
setServletContext
在接口中ServletContextAware
- 参数:
servletContext
- the ServletContext object to be used by this object- 另请参阅:
InitializingBean.afterPropertiesSet()
,ApplicationContextAware.setApplicationContext(org.springframework.context.ApplicationContext)
start
public void start()
从接口复制的说明:Lifecycle
Start this component.Should not throw an exception if the component is already running.
In the case of a container, this will propagate the start signal to all components that apply.
- 指定者:
start
在接口中Lifecycle
- 另请参阅:
SmartLifecycle.isAutoStartup()
stop
public void stop()
从接口复制的说明:Lifecycle
Stop this component, typically in a synchronous fashion, such that the component is fully stopped upon return of this method. Consider implementingSmartLifecycle
and itsstop(Runnable)
variant when asynchronous stop behavior is necessary.Note that this stop notification is not guaranteed to come before destruction: On regular shutdown,
Lifecycle
beans will first receive a stop notification before the general destruction callbacks are being propagated; however, on hot refresh during a context's lifetime or on aborted refresh attempts, a given bean's destroy method will be called without any consideration of stop signals upfront.Should not throw an exception if the component is not running (not started yet).
In the case of a container, this will propagate the stop signal to all components that apply.
- 指定者:
stop
在接口中Lifecycle
- 另请参阅:
SmartLifecycle.stop(Runnable)
,DisposableBean.destroy()
isRunning
public boolean isRunning()
从接口复制的说明:Lifecycle
Check whether this component is currently running.In the case of a container, this will return
true
only if all components that apply are currently running.
handleRequest
public void handleRequest(HttpServletRequest servletRequest, HttpServletResponse servletResponse) throws ServletException, IOException
从接口复制的说明:HttpRequestHandler
Process the given request, generating a response.- 指定者:
handleRequest
在接口中HttpRequestHandler
- 参数:
servletRequest
- current HTTP requestservletResponse
- current HTTP response- 抛出:
ServletException
- in case of general errorsIOException
- in case of I/O errors