diff --git a/addons/web/static/src/core/network/rpc_service.js b/addons/web/static/src/core/network/rpc_service.js index a7fbceef2d5..635821312bd 100644 --- a/addons/web/static/src/core/network/rpc_service.js +++ b/addons/web/static/src/core/network/rpc_service.js @@ -58,12 +58,16 @@ function jsonrpc(env, rpcId, url, params, settings = {}) { request.addEventListener("load", () => { if (request.status === 502) { // If Odoo is behind another server (eg.: nginx) - bus.trigger("RPC:RESPONSE", data.id); + if (!settings.silent) { + bus.trigger("RPC:RESPONSE", data.id); + } reject(new ConnectionLostError()); return; } const { error: responseError, result: responseResult } = JSON.parse(request.response); - bus.trigger("RPC:RESPONSE", data.id); + if (!settings.silent) { + bus.trigger("RPC:RESPONSE", data.id); + } if (!responseError) { return resolve(responseResult); } @@ -72,7 +76,9 @@ function jsonrpc(env, rpcId, url, params, settings = {}) { }); // handle failure request.addEventListener("error", () => { - bus.trigger("RPC:RESPONSE", data.id); + if (!settings.silent) { + bus.trigger("RPC:RESPONSE", data.id); + } reject(new ConnectionLostError()); }); // configure and send request diff --git a/addons/web/static/tests/core/network/rpc_service_tests.js b/addons/web/static/tests/core/network/rpc_service_tests.js index ef5363c8a13..e9d78a87bb4 100644 --- a/addons/web/static/tests/core/network/rpc_service_tests.js +++ b/addons/web/static/tests/core/network/rpc_service_tests.js @@ -197,7 +197,7 @@ QUnit.test("check trigger RPC:REQUEST and RPC:RESPONSE for a simple rpc", async assert.verifySteps(["RPC:REQUEST", "RPC:RESPONSE"]); await env.services.rpc("/test/", {}, { silent: true }); - assert.verifySteps(["RPC:RESPONSE"]); + assert.verifySteps([]); unpatch(browser, "mock.xhr"); });