Tag: tyrus

在Websocket会话中访问UserAgent?

使用Java的“JSR 356 – Java API for WebSocket”的Tyrus参考实现,我找不到一种方法来访问用于Websocket升级的HTTP连接。 因此,我无法访问浏览器发送的HTTP标头。 有没有办法读取HTTP UserAgent标头? 将“Session”对象转换为“TyrusSession”或类似对象是可以接受的,我必须这样做才能获得远程地址。 再次将UserAgent作为Websocket连接内的消息发送将是我的后备解决方案。

Tyrus WebSockets(Java) – 如何设置客户端本地IP地址

有没有办法在使用WebSockets(Tyrus)时指定本地IP地址和端口? 我正在寻找与Socket的完整4参数构造函数相同的function 编辑 : 我发现低级Grizzly TCPNIOTransport确实有一个带本地地址的connect()方法 ,但我不知道如何让Tyrus客户端使用它。

最小的java8 nio安全websocket客户端(wss)

我花了很长时间才找到简单的java websocket客户端,可以使用wss并且不会乱七八糟…… 我试过https://github.com/TooTallNate/Java-WebSocket 添加依赖,因为他说,复制SSLClientExample.java用websocket.org echo服务器测试它,但在第84行得到编译错误没有这样的方法setSocket()…(卡在这里) 我试过tyrus(似乎这是一个由oracle直接开发的大型库)但似乎我需要运行一些appserver(websocket容器)才能使用它… 我想知道对于那些需要有netty或glassfish或grizly的websockets来说这么困难吗? 我认为可以使用SSLEngine(wss)和纯java sdk实现一个…有什么我不知道websockets? (我想它非常像普通的sockets)

连接到安全的websocket

我正在尝试使用Jetty(或任何其他库)连接到安全的websocket。 问题是我收到“找不到可信证书”错误。 我正在使用通过keytool生成的自签名证书。 可以做些什么? import java.net.URI; import java.util.concurrent.Future; import org.eclipse.jetty.util.resource.Resource; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.websocket.api.Session; import org.eclipse.jetty.websocket.api.WebSocketAdapter; import org.eclipse.jetty.websocket.client.WebSocketClient; public class Socket extends WebSocketAdapter{ public static void main(String[] args) { String url = “wss://qa.sockets.stackexchange.com/”; //or “wss://echo.websocket.org” // making sure the the jvm find keystore String JAVASEC=”C:/Program Files/Java/jdk1.8.0_25/jre/lib/security/”; System.setProperty(“javax.net.ssl.keyStore”, JAVASEC+”keystore.jks”); System.setProperty(“javax.net.ssl.trustStore”, JAVASEC+”cacerts.jks”); System.setProperty(“javax.net.ssl.keyStorePassword”, “changeit”); System.out.println(System.getProperty(“javax.net.ssl.trustStore”)); SslContextFactory sslContextFactory […]