Предположим, я разработал веб-страницу, используя классный API визуализации Google, и он делает все, что хочет пользователь. Они могут изменять параметры, просматривать графики и распечатывать страницу, чтобы получить разумный отчет. Все хорошо.Как распечатать веб-страницу на сервере?
Теперь предположим, что я хочу сделать то же самое на сервере. Например, скажем, нам нужен набор отчетов, созданных в определенное время суток, напечатанных в формате PDF и отправляемых по электронной почте менеджеру. Это не инициированное пользователем действие, поэтому у нас нет браузера пользователя или принтера. У нас есть URL-адрес, который будет отображать отчет, если бы у нас был браузер, и все.
Есть ли хороший способ сделать это на стороне сервера? Это просто глупо? Кто-нибудь сделал что-нибудь подобное раньше? У любого из основных браузеров есть API, которые могут обеспечить такую функциональность?
Имейте в виду, что это не просто статический HTML; вероятно, javascript будет работать первым, чтобы сменить DOM.
Я знаю, что мы могли реализовать совершенно другой двигатель отчетности на стороне сервера, чтобы сделать это, но это будет (а) генерировать отчеты, которые выглядят немного по-другому, и (б) требуют от меня, чтобы построить/поддерживать два набора функциональных возможностей.
Вместо этого я был бы счастлив, если бы смог просто отобразить страницу/страницы, которые я хочу, в невидимом серверном браузере и распечатать их в формате PDF (давайте в основном проигнорируем этот шаг - я знаю любое количество драйверов PDF-драйвера что может это сделать).
Я тоже не хочу делать это уродливо - то есть, запустив процесс браузера, а затем сразу же отсылающий нажатия клавиш непосредственно в окно - это просто связано с небольшим подталкиванием. Ответ был таким, как у only related question I found.
Любые советы приветствуются!