## What was reported
Issue neondatabase/serverless#7 (closed, 6 comments): ## Steps to reproduce
- clone https://github.com/bbigras/test-qwik-neon
- npm install
- replace "fake url" in `src/routes/index.tsx` by the **connection string** from neon.tech (ex: `postgres://[email redacted]/neondb`)
- npm run dev
- access YOUR_HOST
Is the connection string the right URL? `invalid upgrade header` sounds like a websocket error, so I'm wondering if I was supposed to use the connection string or maybe a URL for the proxy.
## Expected result
## Actual result
```
node:internal/deps/undici/undici:14152
Error.captureStackTrace(err, this);
## The verified resolution
[jawj (maintainer)]: In Node there is no global WebSocket, so the driver falls back to the Cloudflare-style fetch-with-upgrade-header method, which fails with 'invalid upgrade header'. Fix: supply a WebSocket constructor - `neonConfig.webSocketConstructor = ws` (the `ws` package). Side note: forgetting the password in the connection string produced a cryptic error; newer driver versions emit a helpful message for that.