前言
之前的几篇文章介绍了如何搭建websocket服务器,这篇文章我们聊聊如何利用websocket的扩展来做一些事情。
当浏览器向websocket服务器发送连接请求时,服务器可能想要浏览器提供更多的信息,此时Sec-WebSocket-Extensions请求头也就是今天所讲的websocket的扩展就可以派上用场了,下面我们来看一看如何使用这个请求头!
扩展解析规则
Sec-WebSocket-Extensions请求头对应的值拥有一定的规则,这样服务端可以根据这个固定的规则进行解析。
这个请求头对应的值只能由以下字符组成:
// '!', '#', '$', '%', '&', ''', '*', '+', '-',// '.', 0-9, A-Z, '^', '_', '`', a-z, '|', '~'
除此之外,逗号、分号、双引号和等号是特殊字符,有特殊的作用!
我们先看几个demo,大家就能明白它的规则(Sec-WebSocket-Extensions简写为swe),如下:
//demo1swe: foo//解析结果{"foo":[{}]}//demo2swe: foo;bar//解析结果{"foo":[{"bar":[true]}]}//demo3swe: foo;bar;baz//解析结果{"foo":[{"bar":[true],&#