didn't respect origin server Sec-WebSocket-Extension header
@vietj đang làm issue này rồi.
Từ ngày 17/2/2023.
Đánh giá
Issue này chưa được đánh giá.
Mô tả
Questions
Header Sec-WebSocket-Extension is used to negotiate the list of supported extensions between WebSocket client and server.
In Websocket response 101 Switch Protocols, even origin server returns without permessage-deflate extension, vertx-http-server proxies websocket message to orign server permessage-deflated.
Undoubly, it will not be functional as orgin server doesn't not support that extension.
Version
Which version(s) did you encounter this bug ?
4.3.5
Context
Do you have a reproducer?
Steps to reproduce
- create a new proxy project with below options:
val proxyClient: HttpClient = vertx.createHttpClient()
val proxyOptions = ProxyOptions()
proxyOptions.supportWebSocket = true
val proxy = HttpProxy.reverseProxy(proxyOptions, proxyClient)
proxy.origin(30000, "localhost")
val options = HttpServerOptions()
options.addWebSocketSubProtocol("tty")
vertx
.createHttpServer(options)
.requestHandler(proxy)
.listen(8888) { http ->
if (http.succeeded()) {
startPromise.complete()
println("HTTP server started on port 8888")
} else {
startPromise.fail(http.cause());
}
}
-
downlown and execute ttyd
ttyd is an open source project to serve terminal in Web interface.
Download from https://github.com/tsl0922/ttyd/releases and run with command./ttyd -p 30000 -b /ttyd bash -
Open http://localhost:8888/ttyd/
Extra
As a workaround, I turn off message compression:
options.setPerMessageWebSocketCompressionSupported(false)
- Anything that can be relevant such as OS version, JVM version
- Ngôn ngữ chính
- Java
- Star
- 68
- Fork
- 38
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của eclipse-vertx/vertx-http-proxy
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
-
enhancement
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 56/100
-
bug
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 68/100
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 62/100
-
WebSocket: backend request left open when the client leaves before the upgrade completesCó thể đã có người làm @zenios đã nhận 9 ngày trước. Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 25/100
Tất cả issue của eclipse-vertx/vertx-http-proxy
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
apache/rocketmq-dashboard#7039 ·
Maintainer thường phản hồi trong vòng 3 ngày
-
pdfium-drift
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 82/100
Stirling-Tools/JPDFium#176 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Guidelines: redundant use cases, stale dev bundle after snapshot bumps, looking up snapshot APICó thể đã có người làm @totally-not-ai đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
vaadin/use-cases#441 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
hiero-ledger/hiero-consensus-node#27712 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 61/100
Vakore/ZappierGames#162 ·