mirror of
https://github.com/status-im/nim-websock.git
synced 2025-02-04 05:33:43 +00:00
21 lines
676 B
Nim
21 lines
676 B
Nim
import ws, chronos, chronicles, httputils
|
|
|
|
proc cb(transp: StreamTransport, header: HttpRequestHeader) {.async.} =
|
|
info "Header: ", uri = header.uri()
|
|
if header.uri() == "/ws":
|
|
info "Initiating web socket connection."
|
|
try:
|
|
var ws = await newWebSocket(header, transp)
|
|
echo await ws.receivePacket()
|
|
info "Websocket handshake completed."
|
|
except WebSocketError:
|
|
echo "socket closed:", getCurrentExceptionMsg()
|
|
|
|
let res = await transp.sendHTTPResponse(HttpVersion11, Http200, "Hello World")
|
|
|
|
when isMainModule:
|
|
let address = "127.0.0.1:8888"
|
|
var httpServer = newHttpServer(address, cb)
|
|
httpServer.start()
|
|
waitFor httpServer.join()
|