Typo3 v9.5.5, PHP 7.2, после обновления с 8.7. Кеш очищен, кеш отключен, среда разработки. У моего расширения requireCHashArgumentForActionArguments
установлено 0.
Я создаю ссылки на действия, используя синтаксис, как показано ниже:
<f:link.action action="test" noCacheHash="1"></f:link.action>
К сожалению, cHash
аргумент всегда присутствует в возвращаемом URL. Это нарушает логику моего расширения, поскольку я добавляю дополнительные атрибуты в URL в моем коде JavaScript перед вызовом действия через запрос ajax.
Я ожидал, что noCacheHash
аргумент приведет к удалению cHash
аргумента из URL.
Я ожидал, что настройка requireCHashArgumentForActionArguments
предотвратит любые проблемы с проверкой URL, даже если cHash
присутствует в URL.
Мне известно о cHashExcludedParameters
настройке конфигурации, но я хотел бы отключить cHash
для своего расширения в целом.
Итак, я прошу помощи или объяснения.
Изменить: если я вручную удалю chash
аргумент из URL и вызываю его, запрос будет обработан успешно. Итак, это означает, что requireCHashArgumentForActionArguments
обрабатывается нормально, но только когда chash
отсутствует в URL-адресе.
Изменить 2:
В моем случае неверный cHash вызвал вызов pageNotFoundOnCHashError
обработчика. Я установил $GLOBALS['TYPO3_CONF_VARS']['FE']['pageNotFoundOnCHashError'] = false;
в AdditionalConfiguration.php
, и он «решил» проблему (не изящное исправление).