1

WebRequestHTML コンテンツを別の Web サーバーに投稿するために を作成します。通常のテキスト コンテンツを使用する場合は機能しますが、HTML コンテンツを投稿すると、 を呼び出すときにタイムアウト エラーが発生しますGetResponse()

WebResponse response = request.GetResponse()

どうすれば問題を把握できますか? のエラーハンドラーを追加しようとしましたWebExceptionが、例外をキャッチできませんでした。

リクエストコード :

byte[] byteArray = Encoding.UTF8.GetBytes(sPostData);

// Create a request using a URL that can receive a post. 
WebRequest request = WebRequest.Create(httpUri);
// Set the 'Timeout' property in Milliseconds.
//request.Timeout = 20000;
// Set the ContentType property of the WebRequest.
request.ContentType = contentType;
// Set the Method property of the request to POST.
request.Method = postMethod;
// Set the ContentLength property of the WebRequest.
request.ContentLength = byteArray.Length;
// Get the request stream.
using (Stream PostStream = request.GetRequestStream())
{
    PostStream.Write(byteArray, 0, byteArray.Length);
}
// Get the response.
using (WebResponse response = request.GetResponse())
{
    // Get the stream containing content returned by the server.
    using (Stream responseStream = response.GetResponseStream())
    {
        using (StreamReader reader = new StreamReader(responseStream))
        {
            string responseFromServer = reader.ReadToEnd();

            result = responseFromServer;
        }
    }
}
4

1 に答える 1

0

Fiddlerまたは別の同等のアプリケーションを使用して、ネットワーク トラフィックを確認する必要があります。これにより、サーバーがまったく応答しているかどうか、または応答が遅いかどうかがわかります。

また、サーバー ログまたは Windows イベント ログも確認する必要があります。サーバーが HTML の送信を好まず、エラーをログに記録している可能性があります。この場合、単にハッキングしようとしていると判断し、まったく応答しないと判断する場合があります。

于 2011-04-20T01:33:52.657 に答える