Как получить get на текущую сформированную страницу?
День добрый , допустим есть страница где с помощью js меняется Dom , пользователю в любой момент может понадобится взять скопировать ссылку на текущую страницу и скинуть кому-то , этот "кто-то" первый раз попадает на сайт и у него должно отобразиться все тоже что отображалось на момент копирования ссылки у того кто её отправил.
Звучит как дефолтный вопрос про "как поделиться ссылкой на каталог с предустановленным фильтром для интернет магазина".
и ответ, собственно, только один: гет параметры.
Состояние страницы должно зависеть от того, что в адресной строке. И при изменении состояния страницы через интерфейс - должно меняться и значение гет параметра.
Если параметров много - можно закодировать их в base64 а при открытии страницы декодировать и устанавливать состояние страниы.
Думаю между: составить страницы там 6 разных "исходов" не важно какие действия совершал пользователь, по итогу надо будет скинуть одно из 6 так или иначе , там кароче тест который красиво результат выводит, после того как человек прошел его, и скорей всего он захочет поделиться с друзьями, поэтому, 6 исходов и при копировании - снизу кнопку поставить просто "копировать итог" в буфер уже заготовленная страница улетает, второй вариант: просто перекидывать на отдельные страницы сразу с результатом - и там уже он сможет с адресной строки копировать и скидывать , третий вариант: найти какую-то "махину" которая в определенный момент времени , всю страницу сохранит в отдельный файл , подменит URL обновит страницу одной строчкой кода. То есть я в определенный момент в js напишу например updated(); и готово
sharpsss, Ну тут всё зависит от дизаина.
Если просто результат теста - то отдельные страинцы, на которые идёт редирект после прохождения теста - выглядит ок вариант. Однако, если тестов много, и на каждый тест делать отдельные страницы по количеству возможных исходов - то уже выглядит геморно и будто бы сделать одну страницу, которая будет генерироваться по гет параметрам - профитнее. А главное при появлении новых тестов - нужно будет лишь добавить данные в бд и профит.
А сохранять всю страницу в отдельный файл, подменять урл это что-то прям оверхед.
Вадим, там сам тест *всего один тест* и исходы они могут поменяться - такой вот момент ) исход может быть один а может 10 - это все в бд хранится, то есть когда челики редакторы редачат тест *добавляют какие-то исходы новые допустим* надо будет ещё страницу добавлять новую.. вот сижу думаю как поступить , нравится вариант с кнопкой "поделиться результатом" которая будет копировать в буфер обмена сгенерированую js ом новую страницу с текущим dom деревом
sharpsss, ну так тогда тем более если количество исходов может меняться, то тут либо генерация на лету по параметрам, либо прегенерация по факту добавления нового параметра.
В буфер копировать страницу? И что дальше? html string чтобы один пользователь другому отсылал?
Вадим, ну типа создаю новую страницу , фул новую - со своим url , и на неё адрес копирую в буфер, о варианте с копированием в картинку по началу думал htm2canvas какой-нибудь задействовать) но что-то мне кажется такое себе
sharpsss, так если сервер будет генерировать новую страницу, то зачем тогда буфер? Не понятно..
Ну и представляете что это будет за помойка спустя n времени использования?
Вадим, всм зачем, вот мы сделали новую страницу допустим называется она elchacho.html , надо в буфер поместить тогда https://mysite/elchacho.html про помойку согласен , но сейчас приоритет "быстро сделать, чтобы работало"
Вадим, спасибо) постараюсь подождать какие-то ещё варианты мало ли кто-то знает какую то супер секретную методику или *найти какую-то "махину" которая в определенный момент времени , всю страницу сохранит в отдельный файл , подменит URL обновит страницу одной строчкой кода. То есть я в определенный момент в js напишу например updated(); и готово* это , чуть позже отмечу ответ правильным , спасибо ещё раз)