Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> System.Net.HttpWebRequest/System.Net.HttpWebResponse, pobieranie danych xml z zewnętrznego serwisu
marekk
post
Post #1





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 27.05.2003

Ostrzeżenie: (0%)
-----


WItam,

mam następujący problem: potrzebuję połączyć się z pewną witryną, przeprowadzić tam autoryzację, po czym ściągnąć pliki xml generowane na bieżąco. Niestety zwykłe funkcje ściągające file_get_contents itp. nie działają gdyż pliki nie są tryzmane besposrednio na serwerze, do tego dochodzi jak wspomniałem autoryzacja. Czytałem trochę i zdajsie można to rozwiązać z wykorzystaniem klas System.Net.HttpWebRequest/System.Net.HttpWebResponse czyli metodą ściągania danych do łańcucha tekstowego. Niestety nie znalazłem nigdzie w miarę jasno opisanej metody z użyciem tych klas i jeszcze pod platforme www.

Jezeli ktoś robił już coś podobnego prosiłbym o pomoc, ewentualnie jakieś inne pomysły rozwiązania problemu.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
marekk
post
Post #2





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 27.05.2003

Ostrzeżenie: (0%)
-----


M.in. ten artykuł wcześniej cyztałem i myślałem ze da sie jakoś to rozwiązać i tym sposobem (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif)

Ale generalnie chcę zeby to działało a musi być w php, poczytam o curlu w takim razie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Próbowałem tego curla i jedno co mi sięudaje to autryzować:

$c = curl_init();
curl_setopt($c, CURLOPT_URL, 'http://mojastrona.pl/autorize.php);
curl_setopt($c, CURLOPT_POST, 1);
curl_setopt($c, CURLOPT_POSTFIELDS, 'login=aaa&password=bbb');
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
echo curl_exec($c);

zwraca 1-ke czyli poszło. Ale teraz po autoryzacji potrzebuję z zachowaniem autoryzowanej sesji pobrać dane:

$file = fopen("plik_do_zapisu.txt", "w+");

curl_setopt($c, CURLOPT_URL, "http://mojastrona.pl/dane.xml");
curl_setopt($c, CURLOPT_FILE, $file);
echo curl_exec($c);

curl_close($c);

Niestety otrzymuję pusty plik (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Może by ktoś pomógł? (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif) Nie wiem czy ta sesja jest gubiona (tworzona od nowa) czy pamietana, czy też może trzeba jeszcze jakieś instrukcje po drodze wykonać?

Ten post edytował marekk 29.10.2007, 21:02:20
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 23:44