web-dev-qa-db-ja.com

TwitterがURLにハッシュと感嘆符を使用するのはなぜですか?また、検索URLをどのように書き換えるのですか?

ハッシュはAJAX検索用ですが、感嘆符はありますか?誰か知っていますか?

また、検索フォームの「action」属性は「/ search」を指していますが、検索を行うと、URLにハッシュ感嘆符が表示されます。単に「/ search」から「/#!/ search」にリダイレクトしているだけですか?

注: qの2番目の部分は未回答のままです:つまり、ユーザーを「/ search」から「/#!/ search」にリダイレクトしますか、それとも「/ search」にユーザーを送信しますか"そしてページのJSを使用してURLを書き換えますか? – Crashalot 1月26日23:51

ありがとう!

33
Crashalot

次に、2番目の部分に答えるには:/#!/ searchにリダイレクトします。

http://Twitter.com/britishdev (プラグプラグ)に移動するときに応答ヘッダーを見ると、Locationヘッダーが「Location:-」に設定された302(一時的なリダイレクト)が返されます。 http://Twitter.com/#!/britishdev "

はい、JavaScriptは宛先ページにすべての詳細を取り込みますが、リダイレクト先の場所に関係なく。

10

これは、一貫性を確保し、ajaxURLをクロール可能にするためにGoogleが確立した事実上の標準になりました。

http://code.google.com/web/ajaxcrawling/docs/getting-started.html を参照してください

彼らは_history.pushState_を使用していると思います。コンソールでhistory.back()を実行すると、ページに戻ります。

31
meder omuraliev

はい、HTTP302でリダイレクトします。

ところで、 "!"空のハッシュでケースを排除するために使用されます。 「http:// url#」は、ブラウザを一番上にスライドさせます。

23
tester