如何处理 "Failed to construct WebSocket: The URL is invalid" JavaScript 异常?
How can I deal with an "Failed to construct WebSocket: The URL is invalid" JavaScript exception?
我正在尝试配置我的 Vaadin 应用程序(版本 7.7.15)以支持 IPv6,但 URL 编码不正确。
例如:如果ip是:fd71:2d5a:e15a:1ed3::1,在浏览器上这样访问:http://[fd71:2d5a:e15a:1ed3::1].
问题是字符“[”被替换为“%5B”,字符“]”被替换为“%5D”。
此编码导致 "Failed to construct WebSocket: The URL is invalid; JavaScriptException [SyntaxError]" 正如图片所描述的那样。
但是,如果我将@Push 注释从@Push(transport = Transport.WEBSOCKET_XHR) 修改为@Push(transport = Transport.LONG_POLLING),我就可以访问UI,但是 API 调用非常非常慢。
谁能告诉我怎样才能避免这些字符被编码?
谢谢,
乔治
更新:
正如您在下面链接的拉取请求中看到的那样,此错误已解决到 Atmosphere Framework 中:
https://github.com/Atmosphere/atmosphere-javascript/pull/243
此致,
乔治
我正在尝试配置我的 Vaadin 应用程序(版本 7.7.15)以支持 IPv6,但 URL 编码不正确。
例如:如果ip是:fd71:2d5a:e15a:1ed3::1,在浏览器上这样访问:http://[fd71:2d5a:e15a:1ed3::1].
问题是字符“[”被替换为“%5B”,字符“]”被替换为“%5D”。
此编码导致 "Failed to construct WebSocket: The URL is invalid; JavaScriptException [SyntaxError]" 正如图片所描述的那样。
但是,如果我将@Push 注释从@Push(transport = Transport.WEBSOCKET_XHR) 修改为@Push(transport = Transport.LONG_POLLING),我就可以访问UI,但是 API 调用非常非常慢。
谁能告诉我怎样才能避免这些字符被编码?
谢谢, 乔治
更新:
正如您在下面链接的拉取请求中看到的那样,此错误已解决到 Atmosphere Framework 中: https://github.com/Atmosphere/atmosphere-javascript/pull/243
此致, 乔治