前のページのURLを取得するには?
シナリオ、ユーザーは google、yahoo、bing から来る可能性があります。
彼らがどこから来たのかを知る方法は?
Request.UrlReferrer を使用しようとし
ましたが、null 値が返されます。
アドバイスをありがとう。
ASP.NET ウェブフォーム、C# を使用しています。
更新
ウェブサイトを運営しています。
ユーザーが私のウェブサイトにアクセスしたときに、どこから来たのかを知りたいだけです。
あなたが説明しているのはReferer
HTTP ヘッダーです (元々は「Referrer」のスペルミスであり、現在は行き詰まっています)。ブラウザーは、このフィールドに、ユーザーが新しいページに移動する原因となった Web ページの URI を入力します (<a>
ハイパーリンクのクリック、 <form
> 送信、Flash オブジェクト内のアクションなど)。アドレスがアドレス バーに直接入力された場合や、デスクトップの電子メール メッセージでリンクが開かれた場合など、すべてのユーザー アクションによってヘッダーが設定されるわけではありません。
ASP.NET では、このヘッダーはRequest.UrlReferrer
プロパティからアクセスできます。ただし、HTTP ヘッダー値が URI でない場合、またはフィールドがクライアント UA によって設定されていない場合、このプロパティは null になります。
このメカニズムはクライアントによって設定されるため、決して依存してはなりません。また、クライアントを信頼してはなりません ( http://en.wikipedia.org/wiki/Defensive_programming )。前述のとおり、すべての訪問者に Referer ヘッダーが設定されているわけではありません。