是否可以通过运行在用户浏览器中的web应用程序的websocket连接与NSQ通信?
任何内置的NSQ功能或第三方图书馆的建议都会有很大的帮助。
发布于 2022-07-25 22:02:51
最近,有一个WSQ库解决了通过websocket连接与NSQ通信的任务。
它允许在Websocket和NSQ侧分别定义消息编码/解码逻辑。此外,WSQ还支持注入身份验证和授权逻辑,控制用户对主题的订阅和发布的访问,以及基于消息内容的传入消息过滤。
创建WSQ服务器示例:
// Create the default config
wsqConfig := wsq.NewConfig()
// Configure Websocket CheckOrigin callback to bypass any checks.
// Don't do it in production!
wsqConfig.SetWSCheckOrigin(wsq.CheckOriginBypass)
// Create the server instance specifying message and user types to use.
server := wsq.NewServer[message, *wsq.AnonymousUser](
// Address (optional) and port to listen on
":9980",
// WSQ Config instance
wsqConfig,
// NSQ Config instance
nsq.NewConfig(),
// WSQ Transformer struct providing encoders/decoders for NSQ and Websocket sides respectivly
&wsq.Transformer[message]{NSQEnDec: &nsqEnDec{}, WSEnDec: &wsEnDec{}},
// Authentication controller
&wsq.NoAuthentication,
)
server.Run()https://stackoverflow.com/questions/73115743
复制相似问题