2011-01-19 3 views
32

해시는 AJAX 검색에 대한 것이지만 느낌표는 무엇입니까? 누구 알아?Twitter에서 해시 및 느낌표를 URL에 사용하는 이유는 무엇이며 검색 URL을 다시 쓰는 방법은 무엇입니까?

또한 검색 양식의 "action"속성은 "/ search"를 가리키지 만 검색을 수행하면 해시 느낌표가 URL에 나타납니다. 그들은 단순히 "/ search"에서 "/ #!/search"로 방향을 바꾸고 있습니까?

참고 : q의 두 번째 부분은 "/ search"에서 "/ #!/페이지에서 JS를 사용하여 URL을 다시 작성 하시겠습니까? - Crashalot Jan 26 at 23:51

고마워요!

+0

[Facebook의 shebang/hashbang (#!) 및 새로운 Twitter URL은 무엇입니까?] (http://stackoverflow.com/questions/3009380/whats-the-shebang-hashbang-in-facebook- and-new-twitter-urls-for) - 적어도 첫 번째 부분은 어쨌든 – BoltClock

답변

9

두 번째 부분에 답하려면 :/#!/search로 리디렉션됩니다.

로 설정 한 위치 헤더는 302 (임시 리디렉션)을 반환 http://twitter.com/britishdev (플러그 플러그)에 갈 때 당신은 응답 헤더를 보면 "위치 : http://twitter.com/#!/britishdev"

예 자바 스크립트는 다음 당기고 모든 대상 페이지에 세부 사항이 표시되지만 리디렉션되는 위치는 관계 없습니다.

+10

내가 엎드린 것은 무엇 이었습니까?! 플러그 플러그 – BritishDeveloper

+1

. 아, 유머 감각이 좋아! –

+2

하 하에 대한 – BritishDeveloper

30

Google은 일관성을 유지하고 ajax URL을 크롤링 할 수 있도록 사실상 표준이되었습니다.

나는 그들이 history.pushState을 사용하는 생각 http://code.google.com/web/ajaxcrawling/docs/getting-started.html

를 참조하십시오. 콘솔에서 history.back()을 수행하면 페이지로 다시 연결됩니다.

+1

실제로, 질문의 두 번째 부분은 여전히 ​​답을 찾지 못했습니다. 즉, 사용자를 "/ search"에서 "/ #!/search"로 리다이렉트하거나 사용자를 "/ search"로 보내고 페이지에서 JS를 사용하여 URL을 다시 쓰게할까요? – Crashalot

23

예, HTTP 302로 리디렉션됩니다.

그런데 "!" 빈 해시가있는 사례를 제거하는 데 사용됩니다. "http : // url #"은 브라우저를 맨 위로 슬라이드시킵니다.

+1

또한 여기에 대해 http://code.google.com/web/ajaxcrawling/docs/getting-started.html – Ergec

관련 문제