Thread View: alt.pl.comp.lang.csharp
3 messages
3 total messages
Started by Invi
Sun, 14 Mar 2010 18:58
Wysyłanie HTTP POST do serwa i program przestaje odpowiadać
Author: Invi
Date: Sun, 14 Mar 2010 18:58
Date: Sun, 14 Mar 2010 18:58
49 lines
3264 bytes
3264 bytes
Witam, pierwszy raz tu pisze, więc najpierw ciut o mnie, imo te informacje mogą mieć znaczenie jak zobaczycie kod^^' Jestem hmm raczej początkującym w C# i windowsforms choć coś tam wiem. Jeśli chodzi o moje wcześniejsze doświadczenia z programowaniem, to nie były one zbyt bogate. Turbo Pascal i troszeczkę Javy, , później dużo PHP, i JS. No to tyle na wstępie. Więc tak, Jest sobie okienko WindowsForms, jest sobie textbox, user do niego wkleja linki, jeden pod drugim, klika "Start" i program wysyła sobie requesty? http POST do skryptu php. Do wysyłania requestów i odbierani odpowiedzi używam WebClient. Do skryptu wszystko ładnie dociera i php ładnie to mieli. Problem tylko w tym, że podczas wysyłania POST'a i oczekiwania na odpowiedź serwa program łapie zwieche, to znaczy na pasku tytułu pojawia się "(Brak Odpowiedzi)"... Najważniejsze rzeczy wyglądają mniej więcej tak: http://wklej.to/r7uB Nie sądzę, żeby to była wina aktualizacji okna z logiem, bo jak ustawie na sztywno w metodzie sendpost np, return 1; z pominięciem wysłania requesta i odebrania odpowiedzi, to program ładnie i szybko mieli te linki i sobie coś tam wyświetla w oknie z logiem... mam 2 podejrzenia, co do przyczyny. 1. Po prostu serw muli i długo mieli skrypt zanim odpowie. Jeśli to jes przyczyna to czy jest jakiś sposób, żeby wolna praca serwa nie powodowała chwilowych zamrożeń programu? za czym mam googlać? 2. Sprawdzanie odpowiedź zawiesza program. Jeśli sposób w jaki sprawdzam odpowiedź nie jest najlepszy, albo wręcz zły, i to faktycznie może być przyczyną, to podpowiedzcie mi proszę czego mam szukać w google/manualu/msdn :) Co do całej reszty, jest zrobione tak byle działało, bez ładu i składu raczej, nie wiem jakie są dobre i złe praktyki etc, ale do tego myślę dojdę sobie powoli sam i stopniowo sobie wszystko poprawię. Oczywiście jeśli ktoś ma czas i ochotę wytknąć mi błędów ile się da, nie ma problemu, jestem otwarty na krytykę, jeszcze tylko jak po każdym błędzie było by jedno czy dwa słowa kluczowe, za którymi powinienem googlać, to byłbym ogromnie wdzięczny, nawet za najostrzejszą krytykę :D Na razie bardzo mi preszkadza, a do tego irytuje mnie ten problem z zamarazniem programu i nie bardzo wiem czego szukać :/ Pozdrawiam Adam
Re: Wysyłanie HTTP POST do serwa i program przestaje odpowiadać
Author: Maciek sq7obj
Date: Sun, 14 Mar 2010 20:22
Date: Sun, 14 Mar 2010 20:22
54 lines
4045 bytes
4045 bytes
On 14 Mar, 19:58, Invi <adii_...@o2.pl> wrote: > Witam, pierwszy raz tu pisze, więc najpierw ciut o mnie, imo te informacje > mogą mieć znaczenie jak zobaczycie kod^^' > Jestem hmm raczej początkującym w C# i windowsforms choć coś tam wiem. > Jeśli chodzi o moje wcześniejsze doświadczenia z programowaniem, to nie > były one zbyt bogate. Turbo Pascal i troszeczkę Javy, , później dużo PHP, > i JS. No to tyle na wstępie. > > Więc tak, > Jest sobie okienko WindowsForms, jest sobie textbox, user do niego wkleja > linki, jeden pod drugim, klika "Start" i program wysyła sobie requesty? > http POST do skryptu php. Do wysyłania requestów i odbierani odpowiedzi > używam WebClient. > Do skryptu wszystko ładnie dociera i php ładnie to mieli. > Problem tylko w tym, że podczas wysyłania POST'a i oczekiwania na > odpowiedź serwa program łapie zwieche, to znaczy na pasku tytułu pojawia > się "(Brak Odpowiedzi)"... > > Najważniejsze rzeczy wyglądają mniej więcej tak:http://wklej.to/r7uB > > Nie sądzę, żeby to była wina aktualizacji okna z logiem, bo jak ustawie na > sztywno w metodzie sendpost np, return 1; z pominięciem wysłania requesta > i odebrania odpowiedzi, to program ładnie i szybko mieli te linki i sobie > coś tam wyświetla w oknie z logiem... > > mam 2 podejrzenia, co do przyczyny. > > 1. Po prostu serw muli i długo mieli skrypt zanim odpowie. > Jeśli to jes przyczyna to czy jest jakiś sposób, żeby wolna praca serwa > nie powodowała chwilowych zamrożeń programu? za czym mam googlać? > 2. Sprawdzanie odpowiedź zawiesza program. > Jeśli sposób w jaki sprawdzam odpowiedź nie jest najlepszy, albo wręcz > zły, i to faktycznie może być przyczyną, to podpowiedzcie mi proszę czego > mam szukać w google/manualu/msdn :) > > Co do całej reszty, jest zrobione tak byle działało, bez ładu i składu > raczej, nie wiem jakie są dobre i złe praktyki etc, ale do tego myślę > dojdę sobie powoli sam i stopniowo sobie wszystko poprawię. > Oczywiście jeśli ktoś ma czas i ochotę wytknąć mi błędów ile się da, nie > ma problemu, jestem otwarty na krytykę, jeszcze tylko jak po każdym > błędzie było by jedno czy dwa słowa kluczowe, za którymi powinienem > googlać, to byłbym ogromnie wdzięczny, nawet za najostrzejszą krytykę :D > > Na razie bardzo mi preszkadza, a do tego irytuje mnie ten problem z > zamarazniem programu i nie bardzo wiem czego szukać :/ > > Pozdrawiam > Adam Poszukaj informacji o wątkach, lub użyj kontrolki BackgroundWorker. Na MSDNie do obu jest dosyć ładna dokumentacja afair. Odpalając te funkcje w wątku który odpowiada za wygląd aplikacji sprawiasz, że zamraża się ona do momentu kiedy wszystkie funkcje się wykonają (czyli do momentu kiedy Twój program skończy odpytywać serwer).
Re: Wysyłanie HTTP POST do serwa i program przestaje odpowiadać
Author: Invi
Date: Mon, 15 Mar 2010 19:24
Date: Mon, 15 Mar 2010 19:24
8 lines
1427 bytes
1427 bytes
W dniu 2010-03-14 21:22, Maciek sq7obj pisze: > Poszukaj informacji o wątkach, lub użyj kontrolki BackgroundWorker. Na > MSDNie do obu jest dosyć ładna dokumentacja afair. Odpalając te > funkcje w wątku który odpowiada za wygląd aplikacji sprawiasz, że > zamraża się ona do momentu kiedy wszystkie funkcje się wykonają (czyli > do momentu kiedy Twój program skończy odpytywać serwer). O! Dzięki Ci bardzo :>
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads