Lightweight websocket implement for proxy tools.
Stream:
rust
{
// establish connection, handshake
let stream = ...
// read some data
stream.read(&mut buf);
// write some data
stream.write(&buf);
}
FrameHead(Fin, OpCode, Mask, PayloadLen):
```rust { // encode a frame head let head = FrameHead::new(...); let offset = unsafe { head.encode_unchecked(&mut buf); }
// decode a frame head
let (head, offset) = FrameHead::decode(&buf).unwrap();
} ```
Handshake:
```rust { // make a client handshake request let mut customheaders = HttpHeader::newstorage(); let request = Request::new(&mut custom_headers); let offset = request.encode(&mut buf).unwrap();
// parse a server handshake response
let mut custom_headers = HttpHeader::new_storage();
let mut response = Response::new(&mut custom_headers);
let offset = response.decode(&buf).unwrap();
} ```