Code Day's Night

ichikawayのブログ

URLにアンカーの#(シャープ)がある場合に送信されるGETリクエスト

URLに含まれる#(シャープ)は、ページ内リンクアンカー、ハッシュ、フラグメントなどの名称があるが、#が入る場合のGETリクエストはどのようになっているか。

例えば

http://example.com/foo/bar/#/1

というようなURLにGETリクエストする場合、ブラウザは#以降の文字列を付けずに

GET /foo/bar/

というURLパスでリクエストを送る。

#以降の文字列はレスポンス取得後にJavaScriptやブラウザが使うものとして扱われる。

 

curlコマンドで上記のようなURLにリクエストを送信し、tcpdumpして確認。

tcpdump -A dst host xxx.xxx.xxx.xxx