From 85c4871701ccbed466243c49e1b1e62c0183abeb Mon Sep 17 00:00:00 2001 From: Pooja Date: Tue, 15 Jul 2025 14:41:56 +0530 Subject: [PATCH] fix: awsv4 signature error bug (#5099) --- packages/bruno-electron/src/ipc/network/prepare-request.js | 2 +- .../bruno-electron/tests/network/prepare-request.spec.js | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/bruno-electron/src/ipc/network/prepare-request.js b/packages/bruno-electron/src/ipc/network/prepare-request.js index b2f11b9f9..777f0446d 100644 --- a/packages/bruno-electron/src/ipc/network/prepare-request.js +++ b/packages/bruno-electron/src/ipc/network/prepare-request.js @@ -426,7 +426,7 @@ const prepareRequest = async (item, collection = {}, abortController) => { } // if the mode is 'none' then set the content-type header to false. #1693 - if (request.body.mode === 'none') { + if (request.body.mode === 'none' && request.auth.mode !== 'awsv4') { if(!contentTypeDefined) { axiosRequest.headers['content-type'] = false; } diff --git a/packages/bruno-electron/tests/network/prepare-request.spec.js b/packages/bruno-electron/tests/network/prepare-request.spec.js index 6fbd745a7..f8c014869 100644 --- a/packages/bruno-electron/tests/network/prepare-request.spec.js +++ b/packages/bruno-electron/tests/network/prepare-request.spec.js @@ -62,7 +62,7 @@ describe('prepare-request: prepareRequest', () => { describe.each(['POST', 'PUT', 'PATCH'])('POST request with no body', (method) => { it('Should set content-type header to false if method is ' + method + ' and there is no data in the body', async () => { - const request = { method: method, url: 'test-domain', body: { mode: 'none' } }; + const request = { method: method, url: 'test-domain', body: { mode: 'none' }, auth: { mode: 'none' } }; const result = await prepareRequest({ request, collection: { pathname: '' } }); expect(result.headers['content-type']).toEqual(false); }); @@ -71,7 +71,8 @@ describe('prepare-request: prepareRequest', () => { method: method, url: 'test-domain', body: { mode: 'none' }, - headers: [{ name: 'content-type', value: 'application/json', enabled: true }] + headers: [{ name: 'content-type', value: 'application/json', enabled: true }], + auth: { mode: 'none' } }; const result = await prepareRequest({ request, collection: { pathname: '' } }); expect(result.headers['content-type']).toEqual('application/json');