-1

Visual Studio 2010 で C# .Net を使用してプログラムを作成しています。

このプログラムは Web サイトの複数の部分 (異なる URL) にアクセスします。私は と を使用HttpWebRequestNetworkCredentialてユーザー名とパスワードを設定しています。

現在、リクエストを送信するたびに、資格情報を設定する必要があります。プロセス全体で一度だけ資格情報を設定する方法はありますか?

public void setCredential(string url)
{    
    //set username and password    
    //and get response    
}

public void Main()    
{ 
    string[] URLs= { url1, url2, url3 };    
    foreach (string url in URLs)    
    {    
        setCredential(url);    
    }
}

前述のように、このようにすると、新しい URL にアクセスするたびに資格情報を設定する必要があり、速度が遅くなることがあります。

foreach ループの外で資格情報を設定しようとしましたが、url2 と url3 の応答を取得できませんでした。

それを行うより良い方法があるかどうか疑問に思っていますか?

-- 午前10時26分編集 --

よくわからない場合は申し訳ありません。

つまり、URL にアクセスしようとするたびに、ユーザー名とパスワードをサーバーに再送信する必要があったということです。

したがって、サンプル コードでは、3 つの異なる URL に対してユーザー名とパスワードを 3 回送信する必要があります。

ユーザー名とパスワードを 1 回だけ送信して、3 つの異なる URL すべてにアクセスできるかどうかを知りたいです。

ps。3 つの URL はすべて、同じユーザー名とパスワードでアクセスできます。

4

1 に答える 1

1

ASP.Net ページから C# の HttpWebRequest に NetworkCredential を渡す

このリンクは NetworkCache を示しています。これが解決策になる可能性があります。

于 2013-06-26T14:37:38.097 に答える