Есть ли способ передать много аргументов и не иметь уродливого URL-адреса?

Я пишу модуль, который отображает графики на основе выбора аргументов (массив с элементами для отображения, daterange и некоторые другие вещи). Это приводит к длинному и уродливому URL-адресу.

Есть ли способ получить аргументы на странице с графиками, не помещая все в URL-адрес этой страницы? Я ищу что-то, что может содержать временные переменные с короткой ссылкой, которую я могу передать в URL-адресе, но ничего не смог найти.

Я использую Drupal 7.

Solutions Collecting From Web of "Есть ли способ передать много аргументов и не иметь уродливого URL-адреса?"

Вы можете использовать отправку формы или файлы cookie для хранения значений, но ни одна из них не является хорошей идеей.

Я бы рекомендовал (если вам не нравится URL-адрес), используя AJAX для извлечения / обновления графика. У вас все еще есть уродливый url, но вы скрываете его внутри запроса ajax.

Таким образом, ваш модуль отображает

/мой путь

но запрос может быть

/ MyModule / displaygraph / х / а / 32432 / с ///

Решение оказалось простым: поместите URL-адреса с индексом в сеанс, передайте индекс в качестве аргумента на следующую страницу и после этого снова найдите URL-адрес в сеансе.