2016-08-24 1 views
1

Я разрабатываю приложение Laravel. Я ищу способ выяснить, из какой страницы пользователь приходит, чтобы сохранить это значение в сеансе и перенаправить на него позже. до сих пор я обнаружил, что вы можете использовать такие методы, как URL::previous() и Redirect::back()->getTargetUrl(), чтобы получить предыдущий URL. однако проблема заключается в том, что эти методы не захватывают значение после хеша URL. поэтому, если пользователь приходит из URL, как это:узнать предыдущий URL-адрес и значение после hash # в Laravel

http://example.com/#/application/some/route

вывод из вышеуказанных способов является:

http://example.com

как я могу захватить полный URL, в том числе стоимости после хэша?

ответ

0

Как я могу получить полный URL-адрес, включая значение после хэша?

Это не возможно на стороне сервера - поскольку хэш-часть URL-адреса имеет исключительно важное значение на стороне клиента и даже не отправляется на сервер.

Так что если вы хотите эту информацию, вы должны получить ее через JavaScript, пока пользователь находится на этой странице.

+0

я вижу. возможно ли записать данные в сеанс/кеш с помощью javascript, чтобы сделать его доступным на стороне сервера? в частности, я пытался использовать «Session :: put» («ключ», «значение») «Laravel» для хранения значения и получения его с помощью «Session :: pull (« ключ »)». я полагаю, что нет способа сохранить такое значение с клиентской стороны? – rrrafalsz

+1

Вы сделали бы запрос на сервер (AJAX), чтобы сервер мог сохранить его в сеансе. – CBroe

0

Часть URL-адреса hash используется только на стороне клиента. Он никогда не появится в журналах сервера, запросах или как часть строки REFERRER. И не будет отправлено на сервер.

Вы должны использовать javascript.

Смежные вопросы