I’m using Durable Objects as a WebSocket server.
My local configuration with Wrangler is functioning correctly. An external software that I have no control over connects to my worker, which then redirects the route to DO and creates a WebSocketPair. The software sends messages correctly and DO reads them in the local environment using --local
.
After deploying the same code on Workers, the WebSocket connection appears to be established correctly based on the cancellation of the http request in the logs, but DO does not receive any messages. I also attempted to set up a local Node “proxy” that opens a WebSocket server and connects to DO through a WebSocket client upon connection open, forwarding all messages. While this proxy receives the messages, the DO does not read or receive any messages.
The most unusual observation thus far is that sending text messages through Postman to my WebSocket endpoint appears to function properly.
What could potentially be causing the issue?