From 3fa9fea6a4d24271d77e8053d97583736b373530 Mon Sep 17 00:00:00 2001 From: Andrii Oriekhov Date: Sat, 4 Oct 2025 00:03:28 +0300 Subject: [PATCH] use request directory as the destination for saving response (#5699) * use request directory as the destination for saving response * use request directory as the destination for saving response --- .../src/components/ResponsePane/ResponseSave/index.js | 2 +- packages/bruno-electron/src/ipc/network/index.js | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/bruno-app/src/components/ResponsePane/ResponseSave/index.js b/packages/bruno-app/src/components/ResponsePane/ResponseSave/index.js index dae5bad4d..15eef651b 100644 --- a/packages/bruno-app/src/components/ResponsePane/ResponseSave/index.js +++ b/packages/bruno-app/src/components/ResponsePane/ResponseSave/index.js @@ -11,7 +11,7 @@ const ResponseSave = ({ item }) => { const saveResponseToFile = () => { return new Promise((resolve, reject) => { ipcRenderer - .invoke('renderer:save-response-to-file', response, item?.requestSent?.url) + .invoke('renderer:save-response-to-file', response, item?.requestSent?.url, item.pathname) .then(resolve) .catch((err) => { toast.error(get(err, 'error.message') || 'Something went wrong!'); diff --git a/packages/bruno-electron/src/ipc/network/index.js b/packages/bruno-electron/src/ipc/network/index.js index 822fd2e17..655edea68 100644 --- a/packages/bruno-electron/src/ipc/network/index.js +++ b/packages/bruno-electron/src/ipc/network/index.js @@ -1421,7 +1421,7 @@ const registerNetworkIpc = (mainWindow) => { ); // save response to file - ipcMain.handle('renderer:save-response-to-file', async (event, response, url) => { + ipcMain.handle('renderer:save-response-to-file', async (event, response, url, pathname) => { try { const getHeaderValue = (headerName) => { const headersArray = typeof response.headers === 'object' ? Object.entries(response.headers) : []; @@ -1467,8 +1467,9 @@ const registerNetworkIpc = (mainWindow) => { ); }; + const dirPath = path.dirname(pathname); const fileName = determineFileName(); - const filePath = await chooseFileToSave(mainWindow, fileName); + const filePath = await chooseFileToSave(mainWindow, path.join(dirPath, fileName)); if (filePath) { const encoding = getEncodingFormat(); const data = Buffer.from(response.dataBuffer, 'base64')