配置
要在服务器中启用 WebSocket 支持,请在服务器的配置文件中添加 websocket 配置块,如下所示:
WebSocket 用户授权
认证
NATS 支持通过 WebSocket 连接的客户端使用不同形式的认证:
- 用户名/密码
- 令牌
- NKEYs
- 客户端证书
- JWTs
你可以在此处获得更多关于通过 WebSocket 连接的应用程序如何使用这些不同认证形式的信息。
限制连接类型
配置用户时的一个新字段允许你限制特定用户允许的连接类型。
考虑此配置:
如果 WebSocket 客户端要连接并使用用户名 foo 和密码 foopwd,它将被接受。现在假设你希望 WebSocket 客户端仅在使用用户名 bar 和密码 barpwd 连接时才被接受,那么你将使用选项 allowed_connection_types 来限制哪些类型的连接可以绑定到此用户。
选项 allowed_connection_types(也可以命名为 connection_types 或 clients)如你所见是一个列表,你可以允许几种类型的客户端。假设你希望用户 bar 接受标准 NATS 客户端和 WebSocket 客户端,你将这样配置用户:
缺少 allowed_connection_types 意味着允许所有类型的连接(这是默认行为)。
当前可能的值是:
STANDARDWEBSOCKETLEAFNODEMQTT
叶子节点连接
你可以配置远程叶子节点连接,使其连接到 WebSocket 端口而不是叶子节点端口。请参阅叶子节点部分。
Docker
在 Docker 上运行时,默认情况下不启用 WebSocket,因此你必须创建一个具有最小条目的配置文件,例如:
假设配置存储在 /tmp/nats.conf 中,你可以按如下方式启动 docker:
