Witam łączę się przy pomocy HTTPWebRequest ze źródłem danych które pobieram w ten sposób najpierw logowanie i pobieranie.
ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications);
var cookies = new CookieContainer();
ServicePointManager.Expect100Continue = false;
string loginRequest = textBox14.Text.ToString();
string identity = textBox15.Text.ToString();
string credential = textBox16.Text.ToString();
string dataRequest = textBox17.Text.ToString();
// stworzenie obiektu HTTPWebRequest wraz z kontenerem plików cookie
var request = (HttpWebRequest)WebRequest.Create(loginRequest);
request.CookieContainer = cookies;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
// ustawienie requesta z żadaniem identity credential i submit
using (var requestStream = request.GetRequestStream())
using (var writer = new StreamWriter(requestStream))
{
writer.Write("identity="+identity+"&credential="+credential+"&submit=Zaloguj");
}
var responseStream = request.GetResponse().GetResponseStream();
var reader = new StreamReader(responseStream);
string sURL;
sURL = dataRequest;
var wrGETURL = (HttpWebRequest)WebRequest.Create(sURL);
wrGETURL.CookieContainer = cookies;
WebProxy myProxy = new WebProxy("serwerproxy", 80);
myProxy.BypassProxyOnLocal = true;
wrGETURL.Proxy = WebProxy.GetDefaultProxy();
Stream objStream;
objStream = wrGETURL.GetResponse().GetResponseStream(); // tutaj wywala błąd
StreamReader objReader = new StreamReader(objStream);
Następnie po powtórnym wykonaniu tego fragmentu kodu program wiesza się na chwile i wywala błąd tam gdzie napisałem, bład to upłynął limit czasu żądania. Na razie rozwiązałem to w ten sposób, że program jest restartowany po zakończeniu pobierania, wtedy wszystko wraca do normy. Jednak w tej samej instancji programu nie da się drugi raz pobrać tylko raz, np. klikam przycisk start, ściąga się i następnie drugi raz start i już błąd. Nie wiem co jest grane.