feat: import F95 covers using personal encrypted sessions
CI / frontend (push) Failing after 16s
CI / backend (push) Failing after 36s

This commit is contained in:
mrleo1nid committed 2026-10-26 15:39:41 +03:00
1 parent 3f51f06fec
commit 219005d16a
16 files changed
+763 -26

No files matched your search

+41
View File
@@ -0,0 +1,41 @@
# Импорт данных и обложек F95zone
Кнопка «Подтянуть» в формах создания и редактирования игры загружает название,
описание, теги и превью. Изображение сохраняется на сервере в WebP; обложка игры
меняется только после сохранения формы. Перед сохранением превью можно убрать.
Cookie привязаны к текущему пользователю приложения. Если они отсутствуют,
истекли или F95zone запросил вход, открывается окно авторизации с возможностью
отказаться. Уже полученные название, описание и теги остаются в форме.
При отказе автоматических повторов нет; можно заполнить данные вручную.
Чтобы добавить сессию:
1. Войдите в свой аккаунт F95zone в браузере и откройте тему игры.
2. В инструментах разработчика, на вкладке Network, выберите запрос страницы
темы и скопируйте значение заголовка запроса `Cookie`.
3. В окне «Авторизация F95zone» вставьте значение в поле Cookie целиком,
включая `xf_user`, `xf_session`, `cf_clearance` и остальные cookie, если они есть.
При необходимости вставьте `User-Agent` из того же запроса в соседнее поле.
4. Нажмите «Сохранить и повторить». Импорт повторится с вашими cookie.
Cookie используется для запроса темы и скачивания картинки. Сессия хранится
зашифрованной в записи вашего пользователя; другие пользователи её не используют.
Значения не возвращаются через API и не сохраняются в localStorage.
Кнопка «Забыть cookie F95zone» удаляет вашу сессию. При повторном отказе в доступе
сохранённая сессия сбрасывается и окно предлагает ввести новые cookie либо отказаться.
Успешный доступ к F95zone зависит также от защиты сайта; ответ 403 может означать
блокировку автоматических запросов, а не только истёкшую сессию.
После обновления приложения примените миграции до `0005` обычным способом
(Docker-образ применяет их при запуске backend). Установите обновлённые зависимости
backend. Шифрование использует `SECRET_KEY`; при смене ключа пользователям
потребуется заново добавить cookie. Общие `F95_COOKIE` и `F95_USER_AGENT` из `.env`
больше не используются; перезапуск сервера для изменения личной сессии не требуется.
Импорт выбирает `og:image`, а при его отсутствии — первую доступную `bbImage`
из первого сообщения вне скрытых блоков. Поддерживаются изображения на
`f95zone.to` и его поддоменах; внешние хостинги пропускаются. Скачивание ограничено
20 МиБ, переходы за пределы F95zone блокируются до отправки cookie.
Если изображение скачать не удалось, текстовые данные импортируются с сообщением
об ошибке превью; текущая обложка игры сохраняется.