в Ruby on Rails, это может быть www.example.com/ ... #!... всегда переходить к контроллеру => 'перенаправить'? - PullRequest
0 голосов
/ 26 июня 2010

В маршрутизации Ruby on Rails (используя route.rb), можно сказать, для любого URL, имеющего форму:

www.example.com/ ...  #! ...

затем используйте контроллер redirect?

Это так, что в AJAX на какой-либо странице может быть тег #! в конце URL, так что реальный интересующий вас контент - это часть после #!

1 Ответ

4 голосов
/ 26 июня 2010

Вы, кажется, хотите сделать что-то вроде того, что делает Facebook, да?

Итак, вам нужно подумать о том, что делается в ajax в браузере, что делается на сервере, и что браузер отправляет на сервер. В частности, вы должны знать об этом:

Браузер никогда не отправляет на сервер ничего после знака #.

Следовательно, если URL-адрес равен http://mysite.com/foo/bar#!/baz, все, что отправляет броузер на сервер, равны http://mysite.com/foo/bar. Так что ваш вопрос, касающийся обработки на стороне сервера, на самом деле не имеет смысла, потому что веб-приложение на стороне сервера этого не видит.

Что вам нужно, это некоторый JavaScript-код на стороне браузера, чтобы получить URL, заканчивающийся #!, и сделать XMLHttpRequest на сервере для чего-то вроде http://mysite.com/content_js/bar, который затем мог бы вернуть внутренний фрагмент контента, не Ваши верхние и нижние колонтитулы и боковые панели обернуты в какой-то объект json. Javascript на стороне браузера может затем визуализировать этот контент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...