Полагаю, вам нужно написать какую-то собственную логику в скрипте Service Worker.Вы можете общаться с SW из JavaScript страницы, используя window.postMessage.Используя это, вы сможете не кэшировать то или иное по умолчанию, а затем, когда ваши условия будут выполнены, сообщить SW, что кэширование может происходить через postMessage.
Однако я не уверен в вашем подходеэто мудро.Что произойдет в будущем, если срок действия токена истечет, а страница станет кешем SW?Для этого вам нужно написать собственный код удаления кеша.
Я не знаю логику вашего приложения, но, возможно, вы всегда можете визуализировать форму и скрыть ее от JS или использовать PHP / CSS на основе проверки токенастатус или что-то.