aspxWebサイトの画面スクレイピングを実行しているWebサービスがあります。
正常にログインできますが、リクエストを送信するとサーバーエラーが返されます。Fiddlerでチェックアウトすると、コンテンツ(クエリ文字列)が切り捨てられているため、すべてが送信されていないことがわかります。内容は3600文字を超えるかなり長いです。(私の選択ではありません。それは、Webサイトが作成された方法であり、それが期待するものです。)
HttpWebRequest webRequest = WebRequest.Create(REQUESTUSAGE) as HttpWebRequest;
webRequest.CookieContainer = this.Cookies;
webRequest.Method = "POST";
webRequest.ContentType = "application/x-www-form-urlencoded";
StreamWriter requestWriter = new StreamWriter(webRequest.GetRequestStream());
requestWriter.Write(GetPostDataForRequest());
WebResponse response = null;
try
{
response = webRequest.GetResponse();
}
catch (Exception ex)
{}
GetPostDataForRequestはコンテンツを返しますが、私が言ったように、Fiddlerは、明らかな理由もなく、最後の600文字程度が欠落していることを示しています。デバッガーは文字列が期待どおりに返されることを示しますが、どういうわけか正しく書き込まれません。
では、完全な文字列を送信するにはどうすればよいですか?