我正在使用SockJS客户端.SockJS构造函数将相对URL作为
var ws= new SockJS('/spring-websocket-test/sockjs/echo', undefined,{protocols_whitelist: [transport]});
Run Code Online (Sandbox Code Playgroud)
我们在哪里指出WSS://而不是WS://.如果我尝试绝对URL,则会出错:
XMLHttpRequest cannot load ws://localhost:8080/appname/app. Cross origin requests are only supported for HTTP.
_ws_onclose. wasClean: false code: 1002 reason: Can't connect to server
Run Code Online (Sandbox Code Playgroud)
不确定为什么会出现此错误.Spring Server Implementation需要任何类似的配置吗?
cpa*_*y05 15
穿过sock JS客户端代码:我经历了客户端代码-sock JS负责它 - 如果它使用WSS,那么它使用WSS,否则它会执行WS
var that = this;
var url = trans_url + '/websocket';
if (url.slice(0, 5) === 'https') {
url = 'wss' + url.slice(5);
} else {
url = 'ws' + url.slice(4);
}
Run Code Online (Sandbox Code Playgroud)
无需使用SockJS构造函数传递WS或WSS(事实上甚至不是HTTP/HTTPS) - 只需相对URL就足够了.SockJs客户端库负责处理它.我遇到的另一个令人惊讶的事实是,它在URL的末尾附加了"/ websocket" - 这让我知道为什么我无法使用jetty websocket-client apis连接java客户端
| 归档时间: |
|
| 查看次数: |
11356 次 |
| 最近记录: |