When I try to connect wss://<my-domain>.glitch.me/
, it responds with status code 502. I have tried to add a User-Agent
field and an Origin
field in the header, but it doesn’t work. Still 502. I’m about to get mad.
One more thing, if I connect it from my browser (using devtools), it works. However, I need to connect it using another client.
Also not work when using custom domain. Neither browser nor client.
Hi @wuxianucw, welcome to the community
I’m not sure what your problem is (can you share any code?) but I do have a working WebSockets app that I can show you.
It is a basic “push-to-talk” radio system: https://glitch.com/edit/#!/sg-ptt
If you search the project with Ctrl+Shift+F for ‘wss’ you can find the usages:
This may help you diagnose differences between your project and this one that works. Feel free to remix it.
I hope it helps!
Ste
Thanks for your share!
I think using WebSocket in a browser will work, but a third-party client won’t. My connect code is like this:
const WebSocket = require('ws');
const ws = new WebSocket('wss://morning-mountainous-mist.glitch.me/', {
headers: {
"Authorization": "secret",
"Origin": "https://morning-mountainous-mist.glitch.me",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36",
},
origin: 'https://morning-mountainous-mist.glitch.me',
});
ws.on('open', () => {
console.log('WebSocket opened');
})
.on('message', (data) => {
console.log(data);
});
At wss://morning-mountainous-mist.glitch.me/
, I’m running a WebSocket server. So this will connect to it, or got a 401 error due to the wrong Authorization
field. But I got neither. My server cannot receive the request. I guess it was blocked by Glitch’s API gateway.
Thank you again! I’m new here and still exploring.
Ok, I see.
I found this reply in another topic:
So, apparently, “Only the port from process.env.PORT
will be open outside of the container”
Can you set your PORT in .env
and try this?
(Topic: Error during WebSocket handshake: Unexpected response code: 502 - #2 by cori)
Oh, I’m sure that my port is OK. I have read that topic, but no help. I can connect it using browser JavaScript WebSocket
API, so my server and config should be right. I just can’t do so outside the browser. I’m quite puzzled.
Thanks.
could you connect those same browser and node clients to a dummy server that can dump out the request headers/etc? maybe we could look at what differs and try to reconcile them
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.