Ответ 1
Часть URL-адреса после хэша не отправляется на сервер, поэтому вы не можете его обрабатывать. Вы можете извлечь эту часть URL-адреса в клиентском коде, который создает ваш запрос Ajax и отправить его как параметр.
На моем веб-сайте работает поиск по AJAX, который использует глубокую привязку. Когда пользователь следует по ссылке...
http://example.com/articles#/?tags=Mac%20OS,review
... теги "Mac OS" и "review" должны быть уже выбраны в форме поиска, а статьи, связанные с "Mac OS" и "review", должны быть представлены на странице.
У меня есть следующий сценарий, что нужно исправить
Проблема здесь - это продублирование дублированных статей, что выглядит очень плохо для пользователя. Он смотрит на все статьи, и через пару секунд они будут заменены на "Mac OS" -частицы.
Мне нужно иметь следующий сценарий:
Для этого мне нужно получить хэш-часть строки запроса:
/?tags=Mac%20OS
Я не могу использовать параметры запроса после?, потому что я использую AJAX и глубокую привязку. С? -part, браузер будет вынужден перезагрузить страницу. Мне нужно сделать что угодно, не перезагружая страницу.
Вы будете очень благодарны.
Спасибо.
Часть URL-адреса после хэша не отправляется на сервер, поэтому вы не можете его обрабатывать. Вы можете извлечь эту часть URL-адреса в клиентском коде, который создает ваш запрос Ajax и отправить его как параметр.
@NickFitz верен, но если вы должны отправить все, что приходит после символа хеша/фунта #
, вы можете использовать символы с кодировкой URL, которые представляют #
, который равен %23
.
Итак %23
и все, что приходит после %23
, будет отправлено на сервер. Если вы используете современный веб-сервер, они автоматически распознают, что %23
- #
. В Ruby on Rails Rack делает это для вас.