diff --git a/packages/bruno-electron/src/ipc/network/ws-event-handlers.js b/packages/bruno-electron/src/ipc/network/ws-event-handlers.js index 0a99e900b..e974b8c89 100644 --- a/packages/bruno-electron/src/ipc/network/ws-event-handlers.js +++ b/packages/bruno-electron/src/ipc/network/ws-event-handlers.js @@ -26,17 +26,25 @@ const { setAuthHeaders } = require('./prepare-request'); const prepareWsRequest = async (item, collection, environment, runtimeVariables, certsAndProxyConfig = {}) => { const request = item.draft ? item.draft.request : item.request; - const envVars = getEnvVars(environment); - const processEnvVars = getProcessEnvVars(collection.uid); - + const collectionRoot = collection?.draft ? get(collection, 'draft', {}) : get(collection, 'root', {}); const headers = {}; + each(get(collectionRoot, 'request.headers', []), (h) => { + if (h.enabled && h.name?.toLowerCase() === 'content-type') { + contentTypeDefined = true; + return false; + } + }); + each(get(request, 'headers', []), (h) => { if (h.enabled) { headers[h.name] = h.value; } }); + const envVars = getEnvVars(environment); + const processEnvVars = getProcessEnvVars(collection.uid); + let wsRequest = { uid: item.uid, url: request.url, diff --git a/packages/bruno-requests/src/ws/ws-client.js b/packages/bruno-requests/src/ws/ws-client.js index f8e375978..945fa749d 100644 --- a/packages/bruno-requests/src/ws/ws-client.js +++ b/packages/bruno-requests/src/ws/ws-client.js @@ -90,7 +90,7 @@ class WsClient { // Create WebSocket connection const wsConnection = new ws.WebSocket(parsedUrl.fullUrl, { headers, - timeout: timeout, + handshakeTimeout: timeout, followRedirects: true });