mirror of
https://github.com/status-im/nim-websock.git
synced 2025-01-10 01:25:40 +00:00
Arijit Das
a1ae7d2c70
[WIP] Web socket client implementation. (#2)
* Implement websocket server. * Implement websocket client. * Run nimpretty. * Remove commented code. * Address comments. * Address comments on websocket server. * Use seq[byte] to store data. * Working bytes conversion. * Remove result from return * Refactor the code. * Minor change. * Add test. * Add websocket test and fix closing handshake. * Add MsgReader to read data in external buffer.
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.
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
Description
Languages
Nim
100%