1

是否可以重写通过 Nginx 代理的 websocket 消息的内容?

例如,假设我发送了一条包含内容的消息JSON.stringify({ auth: 'someIdKey' })。在 Nginx 上,我会替换 to 的值someIdKeysomeJwt然后将其转发到代理的上游资源。当上游资源将消息发送回客户端时,我还想进行反向翻译。

我知道如何为 HTTP 请求执行此操作(并且正在执行此操作),重写自定义标头以进行即时翻译,但我不确定如何将模式传递给 websocket 通信。

我使用OpenResty作为我的 Nginx 发行版,并且在 Lua 脚本方面还算不错。

将不胜感激任何想法/帮助。

4

1 回答 1

1

您可以使用https://github.com/openresty/lua-resty-websocket模块。

它同时具有服务器端和客户端非阻塞 API。所以你可以编程任何你想要的东西。

于 2017-04-13T08:07:08.327 回答