Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 138 Pomógł: 0 Dołączył: 7.01.2015 Ostrzeżenie: (0%)
|
Witam.
Mam pewien problem z pobieraniem xml'a z pewnego serwisu., Serwis ten ma limity czasowe na różne rodzaje plików. Chciałem wykryć, kiedy zwraca mi poprawny plik xml a kiedy komunikat w formie xml'a Komunikat z informacją o błędzie wygląda tak:
kod, którym pobieram plik. Niestety funkcja curl_error() nie wykrywa tutaj błędu.
Jak mogę rozpoznać, żeskrypt pobrał xml z komunikatem błędu a nie zwykły xml? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 532 Pomógł: 24 Dołączył: 15.04.2011 Skąd: Kalisz Ostrzeżenie: (0%)
|
Ale czekaj... Plik docelowy ma 300MB, ale plik z błędem będzie miał raptem kilka kb. Sprawdź jego rozmiar, jak będzie jakiś dziwny, to załóż, że to błąd i wykonaj akcje.
Jednak tak jak pisze @nospor, albo serwer powinien zwrócić nagłówek w odpowiednik kodzie, albo response serwera powinien być w jakimś innym typie zamiast XML. Albo nawet właśnie XML z treścią błędu, ale razem z nagłówkiem. Poza tym nie przejmuj się wielkością pliku, wbudowany parser XML w PHP jest dość wydajny, powinien bez problemu sobie z tym poradzić - zawsze możesz to zweryfikować czy sparsuje na docelowym serwerze. |
|
|
|
starterrrrr [php]Curl i obsługa błędów. Jak rozpoznać error? 17.02.2020, 16:40:58
nospor No to sparsuj sobie ten xml wpierw i bedziesz widz... 17.02.2020, 16:52:35 
starterrrrr Cytat(nospor @ 17.02.2020, 16:52:35 )... 18.02.2020, 09:51:32
nospor curl monitoruje naglowki. Jesli stronka nie zwraca... 18.02.2020, 09:55:15 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 13:16 |