Изменения документа Встраивание скриптов

Редактировал(а) Alexandr Fokin 2024/01/25 15:43

От версии < 1.5
отредактировано Alexandr Fokin
на 2024/01/25 15:43
К версии 1.1 >
отредактировано Alexandr Fokin
на 2024/01/22 13:21
Изменить комментарий: К данной версии нет комментариев

Комментарий

Подробности

Свойства страницы
Содержимое
... ... @@ -1,21 +1,0 @@
1 -|(% style="width:230px" %)Задача|(% style="width:1255px" %)(((
2 -Встроить свой JS файл в веб приложение.
3 -)))
4 -|(% style="width:230px" %)Окружение|(% style="width:1255px" %)Основано на использовании сервера [[IIS>>doc:Хостинг.ПО.Сервер.IIS.WebHome]] и функции [[Reverse proxy>>doc:Хостинг.ПО.Сервер.IIS.Reverse proxy.WebHome]].
5 -Приложение сервер развернуто в виде Docker контейнера.
6 -|(% style="width:230px" %)1) Переписывание через proxy|(% style="width:1255px" %)(((
7 -Решение: Модифицировать исходный код страницы при прохождении через proxy, внедрив в него код загрузки скрипта.
8 -
9 -Сам скрипт был расположен на уровне proxy, таким образом, чтобы запрос к нему не перенаправлялся на приложение, а отдавался файл скрипта.
10 -
11 -Удалось реализовать переписывание страницы index.html, использую функционал proxy.
12 -Но это привело к тому, что сервер начал очень долго отвечать. Предположительно это вызвано либо нагрузкой на обработку потока файлов, либо необходимостью отключить сжатие (это требуется для работы механизма переписывания страниц).
13 -)))
14 -|(% style="width:230px" %)2) Переписывание исходной страницы|(% style="width:1255px" %)(((
15 -Решение: Найти в файловой системе приложения страницу index.html и провести ее модификацию.
16 -
17 -Было обнаружено, что страница формируется по следующему пути: "/tmp/appsmith/www".
18 -Папку можно вынести из контейнера (через volume) и модифицировать файлы.
19 -Нужно учитывать что страница генерируется при запуске приложения (контейнера), поэтому необходимо реализовать механизм, который будет автоматически модифицировать страницу.
20 -)))
21 -|(% style="width:230px" %) |(% style="width:1255px" %)[[Плагины для браузера>>doc:Разработка.Frontend.JavaScript.Платформы.Браузер.Плагины для браузера.WebHome]], [[Сценарии>>doc:Разработка.Frontend.JavaScript.Платформы.Браузер.Сценарии.WebHome]]