0

google.com に http リクエストを送信しています。これは私がやっている方法です:

    HttpTestWebRequest = (HttpWebRequest)System.Net.WebRequest.Create("http://www.google.com/");
    HttpTestWebRequest.Method = "GET";
    HttpTestWebRequest.BeginGetResponse(GetHttpTestResponse, HttpTestWebRequest);

...

private void GetHttpTestResponse(IAsyncResult asynchronousResult)
{
    var webRequest = (HttpWebRequest)asynchronousResult.AsyncState;
    WebResponse response =((HttpWebRequest)asynchronousResult.AsyncState).EndGetResponse(asynchronousResult);
    ...
}

フィドラーを使用すると、http 302 移動ステータス コードが表示されますが、アプリでは例外がスローされ、Web サイトの新しい場所にリダイレクトされません。

なぜこれが起こっているのですか?

更新 1

を取得していNullReferenceExceptionます。

スタック トレースは次のとおりです。

System.Net.Browser.HttpWebRequestHelper.RemoveHttpOnlyCookies (Uri requestUri、文字列 setCookieHeaderValue)
で System.Net.Browser.HttpWebRequestHelper.ParseHeaders (Uri requestUri、SecurityCriticalDataForMultipleGetAndSet`1 ヘッダー、WebHeaderCollection コレクション、ブール値 removeHttpOnlyCookies、HttpStatusCode& ステータス、String& statusDescription)
で System . MS.Internal.JoltHelper.FireEvent (IntPtr unmanagedObj, IntPtr unmanagedObjArgs )
の MS.Internal.CoreInvokeHandler.InvokeEventHandler(Int32 typeIndex, Delegate handlerDelegate, Object sender, Object args)の.Net.Browser.ClientHttpWebRequest.Progress(Object sender, EventArgs e)
、Int32 argsTypeIndex、Int32 actualArgsTypeIndex、String eventName)

4

2 に答える 2

0

設定してみるHttpTestWebRequest.AllowAutoRedirect = true;

于 2012-06-28T02:55:58.540 に答える
0

ランディング ページ (http://www.google.com) に特定の HTTP ヘッダーがあるようです (Google は重複した Cookie ヘッダーを送信しているようです)。他のサイト/ページは正常に読み込まれるようです。

于 2012-07-17T18:42:50.263 に答える