htmx.config.mode
Задаёт режим запросов для fetch()
Параметр htmx.config.mode задаёт значение mode по умолчанию для запросов Fetch.
Параметр hx-config для отдельного элемента не может переопределить это значение. htmx сбрасывает его до глобального режима, чтобы внедрённая разметка не могла расширить область запросов с same-origin до cors.
По умолчанию: "same-origin"
Допустимые значения
-
"same-origin"— разрешены только запросы к тому же источнику (по умолчанию, наиболее безопасный вариант) -
"cors"— разрешены запросы к источникам из другого домена -
"no-cors"— разрешены ограниченные запросы к источникам из другого домена -
"navigate"— режим навигации
Пример
htmx.config.mode = "cors";
<meta name="htmx-config" content='{"mode":"cors"}'> Безопасность
Режим "same-origin" по умолчанию означает, что браузер отклонит любой запрос Fetch к источнику из другого домена, даже если злоумышленник внедрит hx-get, указывающий на внешний URL.
Если вашему приложению действительно нужен CORS (например, для API на другом поддомене), задайте глобально mode и используйте его вместе с директивой Content-Security-Policy connect-src, чтобы ограничить доступные источники:
<meta http-equiv="Content-Security-Policy"
content="connect-src 'self' https://api.example.com"> Таким образом, даже если злоумышленник внедрит целевой URL, CSP заблокирует соединения с источниками, которые вы явно не разрешили.
Licensed under the Zero-Clause BSD License.
https://four.htmx.org/reference/config/htmx-config-mode/