Nitrogen предоставляет разработчику приложения возможность определять и устанавливать модуль обратного вызова авторизации.
Вместо логики main/0
, которую вы описываете в каждом из ваших обработчиков страниц, вы можете определить обработчик авторизации, как в следующем Gist, который я написал в феврале:
https://gist.github.com/830529
Функция init/2
в определяемом вами модуле обратного вызова security_handler
(при условии, что вы подключаете его при запуске с помощью nitrogen:handler/2
) будет выполнена до функции main/0
в обработчике вашей страницы.
Чтобы убедиться, что никакая часть обработчика страницы POST не выполняется, вы должны вызвать wf:status_code/1
с аргументом 401. Затем укажите соответствующую страницу входа, обслуживаемую 401 ответом согласно конфигурации вашего веб-сервера.