• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java WebSocketHttpHeaders类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.springframework.web.socket.WebSocketHttpHeaders的典型用法代码示例。如果您正苦于以下问题:Java WebSocketHttpHeaders类的具体用法?Java WebSocketHttpHeaders怎么用?Java WebSocketHttpHeaders使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



WebSocketHttpHeaders类属于org.springframework.web.socket包,在下文中一共展示了WebSocketHttpHeaders类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: openConnection

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Test
public void openConnection() throws Exception {
	List<String> subprotocols = Arrays.asList("abc");

	TestLifecycleWebSocketClient client = new TestLifecycleWebSocketClient(false);
	WebSocketHandler handler = new TextWebSocketHandler();

	WebSocketConnectionManager manager = new WebSocketConnectionManager(client, handler , "/path/{id}", "123");
	manager.setSubProtocols(subprotocols);
	manager.openConnection();

	WebSocketHttpHeaders expectedHeaders = new WebSocketHttpHeaders();
	expectedHeaders.setSecWebSocketProtocol(subprotocols);

	assertEquals(expectedHeaders, client.headers);
	assertEquals(new URI("/path/123"), client.uri);

	WebSocketHandlerDecorator loggingHandler = (WebSocketHandlerDecorator) client.webSocketHandler;
	assertEquals(LoggingWebSocketHandlerDecorator.class, loggingHandler.getClass());

	assertSame(handler, loggingHandler.getDelegate());
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:23,代码来源:WebSocketConnectionManagerTests.java


示例2: WampClient

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
public WampClient(DataFormat dataFormat) {
	this.isBinary = dataFormat != DataFormat.JSON;
	this.result = new CompletableFutureWebSocketHandler();
	this.headers = new WebSocketHttpHeaders();

	switch (dataFormat) {
	case CBOR:
		this.jsonFactory = new ObjectMapper(new CBORFactory()).getFactory();
		this.headers.setSecWebSocketProtocol(WampSubProtocolHandler.CBOR_PROTOCOL);
		break;
	case MSGPACK:
		this.jsonFactory = new ObjectMapper(new MessagePackFactory()).getFactory();
		this.headers.setSecWebSocketProtocol(WampSubProtocolHandler.MSGPACK_PROTOCOL);
		break;
	case JSON:
		this.jsonFactory = new MappingJsonFactory(new ObjectMapper());
		this.headers.setSecWebSocketProtocol(WampSubProtocolHandler.JSON_PROTOCOL);
		break;
	case SMILE:
		this.jsonFactory = new ObjectMapper(new SmileFactory()).getFactory();
		this.headers.setSecWebSocketProtocol(WampSubProtocolHandler.SMILE_PROTOCOL);
		break;
	default:
		this.jsonFactory = null;
	}

}
 
开发者ID:ralscha,项目名称:wamp2spring,代码行数:28,代码来源:WampClient.java


示例3: getHeaders

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
protected WebSocketHttpHeaders getHeaders(DataFormat dataFormat) {
	WebSocketHttpHeaders headers = new WebSocketHttpHeaders();

	if (dataFormat == DataFormat.MSGPACK) {
		headers.setSecWebSocketProtocol(WampSubProtocolHandler.MSGPACK_PROTOCOL);
	}
	else if (dataFormat == DataFormat.SMILE) {
		headers.setSecWebSocketProtocol(WampSubProtocolHandler.SMILE_PROTOCOL);
	}
	else if (dataFormat == DataFormat.CBOR) {
		headers.setSecWebSocketProtocol(WampSubProtocolHandler.CBOR_PROTOCOL);
	}
	else {
		headers.setSecWebSocketProtocol(WampSubProtocolHandler.JSON_PROTOCOL);
	}
	return headers;
}
 
开发者ID:ralscha,项目名称:wamp2spring,代码行数:18,代码来源:BaseWampTest.java


示例4: getWebSocketHttpHeaders

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
public WebSocketHttpHeaders getWebSocketHttpHeaders(
		WebSocketSession userAgentSession) {
	WebSocketHttpHeaders headers = new WebSocketHttpHeaders();
	Principal principal = userAgentSession.getPrincipal();
	if (principal != null) {
		Authentication authentication = (Authentication) principal;
		String usernameColonPwd = authentication.getName() + ":"
				+ authentication.getCredentials().toString();
		String encodedCredentials = new String(
				Base64.encode(usernameColonPwd.getBytes()));
		headers.put(HttpHeaders.AUTHORIZATION,
				Collections.singletonList("Basic " + encodedCredentials));
           if(logger.isDebugEnabled()) {
               logger.debug("Added basic authentication header for user " + principal.getName() + " to web sockets http headers");
           }
	}
       else {
           if(logger.isDebugEnabled()) {
               logger.debug("Skipped adding basic authentication header since user session principal is null");
           }
       }
	return headers;
}
 
开发者ID:mthizo247,项目名称:spring-cloud-netflix-zuul-websocket,代码行数:24,代码来源:BasicAuthPrincipalHeadersCallback.java


示例5: getWebSocketHttpHeaders

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Override
public WebSocketHttpHeaders getWebSocketHttpHeaders(final WebSocketSession userAgentSession) {
    WebSocketHttpHeaders headers = new WebSocketHttpHeaders();
    Principal principal = userAgentSession.getPrincipal();
    if (principal != null && OAuth2Authentication.class.isAssignableFrom(principal.getClass())) {
        OAuth2Authentication oAuth2Authentication = (OAuth2Authentication) principal;
        OAuth2AuthenticationDetails details = (OAuth2AuthenticationDetails) oAuth2Authentication.getDetails();
        String accessToken = details.getTokenValue();
        headers.put(HttpHeaders.AUTHORIZATION, Collections.singletonList("Bearer " + accessToken));
        if(logger.isDebugEnabled()) {
            logger.debug("Added Oauth2 bearer token authentication header for user " +
                    principal.getName() + " to web sockets http headers");
        }
    }
    else {
        if(logger.isDebugEnabled()) {
            logger.debug("Skipped adding basic authentication header since user session principal is null");
        }
    }
    return headers;
}
 
开发者ID:mthizo247,项目名称:spring-cloud-netflix-zuul-websocket,代码行数:22,代码来源:OAuth2BearerPrincipalHeadersCallback.java


示例6: connect

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Override
public ListenableFuture<WebSocketSession> connect(TransportRequest request, WebSocketHandler handler) {
	final SettableListenableFuture<WebSocketSession> future = new SettableListenableFuture<WebSocketSession>();
	WebSocketClientSockJsSession session = new WebSocketClientSockJsSession(request, handler, future);
	handler = new ClientSockJsWebSocketHandler(session);
	request.addTimeoutTask(session.getTimeoutTask());

	URI url = request.getTransportUrl();
	WebSocketHttpHeaders headers = new WebSocketHttpHeaders(request.getHandshakeHeaders());
	if (logger.isDebugEnabled()) {
		logger.debug("Starting WebSocket session url=" + url);
	}
	this.webSocketClient.doHandshake(handler, headers, url).addCallback(
			new ListenableFutureCallback<WebSocketSession>() {
				@Override
				public void onSuccess(WebSocketSession webSocketSession) {
					// WebSocket session ready, SockJS Session not yet
				}
				@Override
				public void onFailure(Throwable ex) {
					future.setException(ex);
				}
			});
	return future;
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:26,代码来源:WebSocketTransport.java


示例7: doHandshake

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Override
public final ListenableFuture<WebSocketSession> doHandshake(
		WebSocketHandler handler, WebSocketHttpHeaders headers, URI url) {

	Assert.notNull(handler, "WebSocketHandler is required");
	Assert.notNull(url, "URL is required");

	String scheme = url.getScheme();
	if (!supportedProtocols.contains(scheme)) {
		throw new IllegalArgumentException("Invalid scheme: '" + scheme + "'");
	}

	SettableListenableFuture<WebSocketSession> connectFuture = new SettableListenableFuture<WebSocketSession>();
	try {
		SockJsUrlInfo sockJsUrlInfo = new SockJsUrlInfo(url);
		ServerInfo serverInfo = getServerInfo(sockJsUrlInfo, getHttpRequestHeaders(headers));
		createRequest(sockJsUrlInfo, headers, serverInfo).connect(handler, connectFuture);
	}
	catch (Throwable exception) {
		if (logger.isErrorEnabled()) {
			logger.error("Initial SockJS \"Info\" request to server failed, url=" + url, exception);
		}
		connectFuture.setException(exception);
	}
	return connectFuture;
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:27,代码来源:SockJsClient.java


示例8: supportedSubProtocols

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Test
public void supportedSubProtocols() throws Exception {

	this.handshakeHandler.setSupportedProtocols("stomp", "mqtt");

	given(this.upgradeStrategy.getSupportedVersions()).willReturn(new String[] {"13"});

	this.servletRequest.setMethod("GET");

	WebSocketHttpHeaders headers = new WebSocketHttpHeaders(this.request.getHeaders());
	headers.setUpgrade("WebSocket");
	headers.setConnection("Upgrade");
	headers.setSecWebSocketVersion("13");
	headers.setSecWebSocketKey("82/ZS2YHjEnUN97HLL8tbw==");
	headers.setSecWebSocketProtocol("STOMP");

	WebSocketHandler handler = new TextWebSocketHandler();
	Map<String, Object> attributes = Collections.<String, Object>emptyMap();
	this.handshakeHandler.doHandshake(this.request, this.response, handler, attributes);

	verify(this.upgradeStrategy).upgrade(this.request, this.response,
			"STOMP", Collections.<WebSocketExtension>emptyList(), null, handler, attributes);
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:24,代码来源:DefaultHandshakeHandlerTests.java


示例9: supportedExtensions

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Test
public void supportedExtensions() throws Exception {

	WebSocketExtension extension1 = new WebSocketExtension("ext1");
	WebSocketExtension extension2 = new WebSocketExtension("ext2");

	given(this.upgradeStrategy.getSupportedVersions()).willReturn(new String[] {"13"});
	given(this.upgradeStrategy.getSupportedExtensions(this.request)).willReturn(Arrays.asList(extension1));

	this.servletRequest.setMethod("GET");

	WebSocketHttpHeaders headers = new WebSocketHttpHeaders(this.request.getHeaders());
	headers.setUpgrade("WebSocket");
	headers.setConnection("Upgrade");
	headers.setSecWebSocketVersion("13");
	headers.setSecWebSocketKey("82/ZS2YHjEnUN97HLL8tbw==");
	headers.setSecWebSocketExtensions(Arrays.asList(extension1, extension2));

	WebSocketHandler handler = new TextWebSocketHandler();
	Map<String, Object> attributes = Collections.<String, Object>emptyMap();
	this.handshakeHandler.doHandshake(this.request, this.response, handler, attributes);

	verify(this.upgradeStrategy).upgrade(this.request, this.response, null, Arrays.asList(extension1),
			null, handler, attributes);
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:26,代码来源:DefaultHandshakeHandlerTests.java


示例10: subProtocolCapableHandler

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Test
public void subProtocolCapableHandler() throws Exception {

	given(this.upgradeStrategy.getSupportedVersions()).willReturn(new String[]{"13"});

	this.servletRequest.setMethod("GET");

	WebSocketHttpHeaders headers = new WebSocketHttpHeaders(this.request.getHeaders());
	headers.setUpgrade("WebSocket");
	headers.setConnection("Upgrade");
	headers.setSecWebSocketVersion("13");
	headers.setSecWebSocketKey("82/ZS2YHjEnUN97HLL8tbw==");
	headers.setSecWebSocketProtocol("v11.stomp");

	WebSocketHandler handler = new SubProtocolCapableHandler("v12.stomp", "v11.stomp");
	Map<String, Object> attributes = Collections.<String, Object>emptyMap();
	this.handshakeHandler.doHandshake(this.request, this.response, handler, attributes);

	verify(this.upgradeStrategy).upgrade(this.request, this.response,
			"v11.stomp", Collections.<WebSocketExtension>emptyList(), null, handler, attributes);
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:22,代码来源:DefaultHandshakeHandlerTests.java


示例11: subProtocolCapableHandlerNoMatch

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Test
public void subProtocolCapableHandlerNoMatch() throws Exception {

	given(this.upgradeStrategy.getSupportedVersions()).willReturn(new String[]{"13"});

	this.servletRequest.setMethod("GET");

	WebSocketHttpHeaders headers = new WebSocketHttpHeaders(this.request.getHeaders());
	headers.setUpgrade("WebSocket");
	headers.setConnection("Upgrade");
	headers.setSecWebSocketVersion("13");
	headers.setSecWebSocketKey("82/ZS2YHjEnUN97HLL8tbw==");
	headers.setSecWebSocketProtocol("v10.stomp");

	WebSocketHandler handler = new SubProtocolCapableHandler("v12.stomp", "v11.stomp");
	Map<String, Object> attributes = Collections.<String, Object>emptyMap();
	this.handshakeHandler.doHandshake(this.request, this.response, handler, attributes);

	verify(this.upgradeStrategy).upgrade(this.request, this.response,
			null, Collections.<WebSocketExtension>emptyList(), null, handler, attributes);
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:22,代码来源:DefaultHandshakeHandlerTests.java


示例12: connectWithHandshakeHeaders

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Test
public void connectWithHandshakeHeaders() throws Exception {
	ArgumentCaptor<HttpHeaders> headersCaptor = setupInfoRequest(false);
	this.xhrTransport.setStreamingDisabled(true);

	WebSocketHttpHeaders headers = new WebSocketHttpHeaders();
	headers.set("foo", "bar");
	headers.set("auth", "123");
	this.sockJsClient.doHandshake(handler, headers, new URI(URL)).addCallback(this.connectCallback);

	HttpHeaders httpHeaders = headersCaptor.getValue();
	assertEquals(2, httpHeaders.size());
	assertEquals("bar", httpHeaders.getFirst("foo"));
	assertEquals("123", httpHeaders.getFirst("auth"));

	httpHeaders = this.xhrTransport.getRequest().getHttpRequestHeaders();
	assertEquals(2, httpHeaders.size());
	assertEquals("bar", httpHeaders.getFirst("foo"));
	assertEquals("123", httpHeaders.getFirst("auth"));
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:21,代码来源:SockJsClientTests.java


示例13: connectAndUseSubsetOfHandshakeHeadersForHttpRequests

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Test
public void connectAndUseSubsetOfHandshakeHeadersForHttpRequests() throws Exception {
	ArgumentCaptor<HttpHeaders> headersCaptor = setupInfoRequest(false);
	this.xhrTransport.setStreamingDisabled(true);

	WebSocketHttpHeaders headers = new WebSocketHttpHeaders();
	headers.set("foo", "bar");
	headers.set("auth", "123");
	this.sockJsClient.setHttpHeaderNames("auth");
	this.sockJsClient.doHandshake(handler, headers, new URI(URL)).addCallback(this.connectCallback);

	assertEquals(1, headersCaptor.getValue().size());
	assertEquals("123", headersCaptor.getValue().getFirst("auth"));
	assertEquals(1, this.xhrTransport.getRequest().getHttpRequestHeaders().size());
	assertEquals("123", this.xhrTransport.getRequest().getHttpRequestHeaders().getFirst("auth"));
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:17,代码来源:SockJsClientTests.java


示例14: setUp

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
  String token = authenticate();
  webSocketHttpHeaders = new WebSocketHttpHeaders();
  webSocketHttpHeaders.add("Authorization", "Bearer " + token);

  blockingQueue = new LinkedBlockingDeque<>();
  RestTemplateXhrTransport restTemplateXhrTransport = new RestTemplateXhrTransport();


  SockJsClient sockJsClient = new SockJsClient(Arrays.asList(restTemplateXhrTransport));
  sockJsClient.setHttpHeaderNames("Authorization");
  stompClient = new WebSocketStompClient(sockJsClient);
}
 
开发者ID:sys-devel-d,项目名称:pimp,代码行数:15,代码来源:NotificationControllerIT.java


示例15: webSocketHttpHeadersCallback

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Bean
@ConditionalOnMissingBean(WebSocketHttpHeadersCallback.class)
public WebSocketHttpHeadersCallback webSocketHttpHeadersCallback() {
    return new WebSocketHttpHeadersCallback() {
        @Override
        public WebSocketHttpHeaders getWebSocketHttpHeaders(
                WebSocketSession userAgentSession) {
            return new WebSocketHttpHeaders();
        }
    };
}
 
开发者ID:mthizo247,项目名称:spring-cloud-netflix-zuul-websocket,代码行数:12,代码来源:ZuulWebSocketConfiguration.java


示例16: doHandshake

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Override
public final ListenableFuture<WebSocketSession> doHandshake(WebSocketHandler webSocketHandler,
		WebSocketHttpHeaders headers, URI uri) {

	Assert.notNull(webSocketHandler, "webSocketHandler must not be null");
	assertUri(uri);

	if (logger.isDebugEnabled()) {
		logger.debug("Connecting to " + uri);
	}

	HttpHeaders headersToUse = new HttpHeaders();
	if (headers != null) {
		for (String header : headers.keySet()) {
			if (!specialHeaders.contains(header.toLowerCase())) {
				headersToUse.put(header, headers.get(header));
			}
		}
	}

	List<String> subProtocols = ((headers != null) && (headers.getSecWebSocketProtocol() != null)) ?
			headers.getSecWebSocketProtocol() : Collections.<String>emptyList();

	List<WebSocketExtension> extensions = ((headers != null) && (headers.getSecWebSocketExtensions() != null)) ?
			headers.getSecWebSocketExtensions() : Collections.<WebSocketExtension>emptyList();

	return doHandshakeInternal(webSocketHandler, headersToUse, uri, subProtocols, extensions,
			Collections.<String, Object>emptyMap());
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:30,代码来源:AbstractWebSocketClient.java


示例17: isWebSocketVersionSupported

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
protected boolean isWebSocketVersionSupported(WebSocketHttpHeaders httpHeaders) {
	String version = httpHeaders.getSecWebSocketVersion();
	String[] supportedVersions = getSupportedVersions();
	for (String supportedVersion : supportedVersions) {
		if (supportedVersion.trim().equals(version)) {
			return true;
		}
	}
	return false;
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:11,代码来源:AbstractHandshakeHandler.java


示例18: handleWebSocketVersionNotSupported

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
protected void handleWebSocketVersionNotSupported(ServerHttpRequest request, ServerHttpResponse response) {
	if (logger.isErrorEnabled()) {
		String version = request.getHeaders().getFirst("Sec-WebSocket-Version");
		logger.error("Handshake failed due to unsupported WebSocket version: " + version +
				". Supported versions: " + Arrays.toString(getSupportedVersions()));
	}
	response.setStatusCode(HttpStatus.UPGRADE_REQUIRED);
	response.getHeaders().set(WebSocketHttpHeaders.SEC_WEBSOCKET_VERSION,
			StringUtils.arrayToCommaDelimitedString(getSupportedVersions()));
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:11,代码来源:AbstractHandshakeHandler.java


示例19: parseWebSocketExtensions

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Test
public void parseWebSocketExtensions() {
	List<String> extensions = new ArrayList<String>();
	extensions.add("x-foo-extension, x-bar-extension");
	extensions.add("x-test-extension");
	this.headers.put(WebSocketHttpHeaders.SEC_WEBSOCKET_EXTENSIONS, extensions);

	List<WebSocketExtension> parsedExtensions = this.headers.getSecWebSocketExtensions();
	assertThat(parsedExtensions, Matchers.hasSize(3));
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:11,代码来源:WebSocketHttpHeadersTests.java


示例20: setup

import org.springframework.web.socket.WebSocketHttpHeaders; //导入依赖的package包/类
@Before
public void setup() {
	this.headers = new WebSocketHttpHeaders();
	this.wsHandler = new AbstractWebSocketHandler() {
	};
	this.wsContainer = mock(WebSocketContainer.class);
	this.wsClient = new StandardWebSocketClient(this.wsContainer);
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:9,代码来源:StandardWebSocketClientTests.java



注:本文中的org.springframework.web.socket.WebSocketHttpHeaders类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java CounterProtoOrBuilder类代码示例发布时间:2022-05-22
下一篇:
Java ProtocolVersionProto类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap