0

さて、私の問題は、2 つの異なるサーバーを持つ 2 つの Web サイトがあることです。私がやろうとしているのは、ウェブサイト 1 のボタンのいくつかを、サーバー上のページ (ウェブサイト 2) に書き込むことです。

したがって、これを行うためのアプローチは

  • ユーザーが Web サイト 1 からボタンをクリックします。
  • ユーザーは Web サイト 2 にリダイレクトされます。
  • 彼らがどのページから来たのかを知る必要があるので、彼らが見ている製品を知ることができます. これは、リファラー URL を取得することによって行われます。
  • 次に、URL の productID の番号を解析する必要があります。

URL の例: website1.com/ProductDetails/?referrerPage=1&productID=#######&tab=タイル

リファラー URL を文字列に格納するには、次のコードを使用する必要があることはわかっています。

myReferrer = Request.UrlReferrer.ToString();

どこに置いたらいいのかさっぱりわからない。私のボタンがどこにあるのか、.csファイルで推測していますか?

protected void btnEstimate_Click(object sender, EventArgs e)
{
    connection strings
    {
        does stuff
        {
            does stuff
        }

私の質問は、参照元の URL を取得して、アイテム ID を解析するにはどうすればよいですか?

事前に助けてくれてありがとう。不明な点があれば質問してください・・・初めて質問するのでわからないことがあるかもしれません。ありがとう!

4

2 に答える 2

1

HTTP_REFERER というサーバー変数があります。でアクセスできますRequest.ServerVariables("HTTP_REFERER")

つづりが間違っていることはわかっていますが、それがサーバー変数を実際に呼び出す必要がある方法です。

リファラー サーバー変数は、ユーザーがリンクをクリックした場合にのみ入力されます。私の知る限り、リダイレクトすると、その変数は空になります。

ウィキペディアのリファラー記事

于 2013-05-09T15:22:48.860 に答える
1

これにより、必要なものが得られるはずです。

ASP.NET パスの理解

クエリ文字列と追加のパスを含む完全修飾 URL は、文字列ではなく Uri インスタンスであることに注意してください。UriBuilder.Query プロパティを使用して、クエリ文字列パラメーターを抽出できます。

受信側サイトのページの Page_Load メソッドで URI を解析する必要があります。

UriBuilder.Query プロパティ

于 2013-05-09T14:14:05.583 に答える