私はROR Webアプリに取り組んでいます。私のWebページのURLは以下のようになります-
http://dev.ibiza.jp:3000/facebook/report?advertiser_id=2102#/dashboard
ここで、advertiser_idが2102であることを理解しましたが、#/ dashboardが何を指しているのか理解できません。
#
シンボルに続くURLの部分は、通常、ページのリクエストでサーバーに送信されません。 Webインスペクタを開いてページのリクエストを見ると、#/dashboard
の部分がリクエストにまったく含まれていないことがわかります。
通常の(基本HTML)Webページでは、#
記号を使用してページ内のセクションにリンクできるため、ページが読み込まれた後、ブラウザはそのセクションにジャンプします。
派手なjavascriptが多いWebアプリケーションでは、#
記号が一般的に使用され、その後にURLパスが続きます。たとえば、www.example.com/some-path#/other-path/etc
URLのother-path/etc
部分はサーバーからは見えませんが、 JavaScriptがブラウザーで読み取り、おそらくそのURLパスに基づいて別のものを表示するために使用できます。
したがって、あなたの場合、URLの最初の部分はサーバーへのリクエストです:
http://dev.ibiza.jp:3000/facebook/report?advertiser_id=2102
また、URLの2番目の部分は、JavaScriptがロードした後、ページの特定のビューを表示するためのものです。
#/dashboard
#
記号は フラグメント識別子 の作成にも使用され、通常はWebページ内の特定のコンテンツにリンクするためにも使用されます(ブラウザーを下にジャンプさせるなど)ページの特定のセクション)。
他の人が述べたように、これはSEOに影響します。このようなページにインデックスを付けるには、「#
記号の後ろ」にあるコンテンツに検索エンジンがアクセスできるようにするために、さまざまな手法を採用する必要がある場合があります。
#
シンボルはアンカーと呼ばれ、htmlページの特定の位置にリダイレクトされます。
これはクロール手法です。もっと読むことができます Here
別の例を示します
JavaクラスのソースコードをGitHubに要求します
これに「#L90」を追加すると、Webブラウザーは同じ要求を行い、90行目にスクロールしてコードを強調表示します。
Webブラウザーはgithubサーバーに同じ要求を行いましたが、アンカーされた場合は、応答の受信後に選択された行を強調表示する追加のアクションを実行しました。
#の後は場所のハッシュです。 !以下は、検索エンジンがインデックスAJAX=コンテンツを支援するために使用します。その後は何でもかまいませんが、通常はパスとして見えるようにレンダリングされます(したがって、/)