From 7da74772748c862d14338d992b220fa7e6527375 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C5=A0ime=C4=8Dek?= Date: Wed, 23 Oct 2024 16:31:23 +0200 Subject: [PATCH] Added validation settings --- packages/core/src/http/HttpAgent.ts | 1 + packages/core/src/http/HttpAgentImpl.ts | 8 ++++++-- .../create-ima-app/template/ts/app/config/settings.ts | 1 + 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/core/src/http/HttpAgent.ts b/packages/core/src/http/HttpAgent.ts index 709196b777..6b67c3fb68 100644 --- a/packages/core/src/http/HttpAgent.ts +++ b/packages/core/src/http/HttpAgent.ts @@ -39,6 +39,7 @@ export interface HttpAgentRequestOptions { ) => HttpAgentResponse)[]; abortController?: AbortController; keepSensitiveHeaders?: boolean; + validateCookies?: boolean; } /** diff --git a/packages/core/src/http/HttpAgentImpl.ts b/packages/core/src/http/HttpAgentImpl.ts index af715f877b..5b6184207b 100644 --- a/packages/core/src/http/HttpAgentImpl.ts +++ b/packages/core/src/http/HttpAgentImpl.ts @@ -456,7 +456,9 @@ export class HttpAgentImpl extends HttpAgent { if (composedOptions.fetchOptions?.credentials === 'include') { // mock default browser behavior for server-side (sending cookie with a fetch request) composedOptions.fetchOptions.headers.Cookie = - this._cookie.getCookiesStringForCookieHeader(url); + this._cookie.getCookiesStringForCookieHeader( + options.validateCookies ? url : undefined + ); } return composedOptions; @@ -503,7 +505,9 @@ export class HttpAgentImpl extends HttpAgent { if (receivedCookies.length > 0) { this._cookie.parseFromSetCookieHeader( receivedCookies, - agentResponse.params.url + this._defaultRequestOptions.validateCookies + ? agentResponse.params.url + : undefined ); } } diff --git a/packages/create-ima-app/template/ts/app/config/settings.ts b/packages/create-ima-app/template/ts/app/config/settings.ts index 48759cda2f..af942f3799 100644 --- a/packages/create-ima-app/template/ts/app/config/settings.ts +++ b/packages/create-ima-app/template/ts/app/config/settings.ts @@ -24,6 +24,7 @@ export const initSettings: InitSettingsFunction = (ns, oc, config) => { 'Accept-Language': config.$Language, }, }, + validateCookies: true, // Validate cookies when parsing from Set-Cookie header and when sending cookies from the server. cache: true, // if value exists in cache then returned it else make request to remote server. }, cacheOptions: {