mirror of
https://github.com/status-im/nim-websock.git
synced 2025-01-10 01:25:40 +00:00
jangko
99d643013b
fix autobahn client to process multi messages test case
turn out the autobahn server not only use single echo message for all test case, but also use multi messages response to measure performance.
Websocket for Nim
We're working towards an implementation of the Websocket protocol for Nim. This is very much a work in progress, and not yet in a usable state.
See what is available and what is missing in Autobahn summary report
Building and testing
Install dependencies:
nimble install -d
Starting HTTP server:
nim c -r test/server.nim
Testing Server Response:
curl --location --request GET 'http://localhost:8888'
Testing Websocket Handshake:
curl --include \
--no-buffer \
--header "Connection: Upgrade" \
--header "Upgrade: websocket" \
--header "Host: example.com:80" \
--header "Origin: http://example.com:80" \
--header "Sec-WebSocket-Key: SGVsbG8sIHdvcmxkIQ==" \
--header "Sec-WebSocket-Version: 13" \
http://localhost:8888/ws
Roadmap
- Framing
- Text Messages
- Binary Messages
- Pings/Pongs
- Reserved Bits
- Opcodes
- Non-control Opcodes
- Control Opcodes
- Fragmentation
- UTF-8 Handling
- Close Handling
- Basic close behavior
- Close frame structure
- Payload length
- Valid close codes
- Invalid close codes
- Integrate Autobahn Test suite. (In progress)
- WebSocket Compression
- WebSocket Extensions
- Performance
Description
Languages
Nim
100%