Wrzasq.pl

Allegro WebAPI tutorial vol. 5

Thursday, 26 February 2009, 01:20

Część I
Część II
Część III

Kolejna część

Pisząc pierwsze części nie spodziewałem się aż takiego zainteresowania. Wiedziałem, że nie ma w Internecie zbyt wiele materiałów pomocniczych dotyczących Allegro WebAPI, ale popularność moich publikacji mnie zaskoczyła - niemal codziennie dostaje maile z proźbami o pomoc w jakichś drobnych sprawach, albo nawet z samymi tylko podziękowaniami. Dochodzę do wniosku, że wolę, żeby Allegro nie uaktualniało dokumentacji ;). Cieszę się, że komuś przydały się moje artykuły.

Duże zainteresowanie artykułami

Swoją drogą zauważyłem, że nie tylko brak dokumentacji jest ułomnością Allegro WebAPI, ale nawet taka rzecz, jak kolejność argumentów do poszczególnych funkcji. Zamiana podmiotu z przedmiotem denerwuje mnie w PHP, ale w Allegro WebAPI jest ona wręcz żenująco chaotyczna. Zamiana miejscami tylko samego klucza użytkownika i klucza wersji jest nieraz wystarczająco dezorientująca, a gdy dochodzi do tego jeszcze cel, limit i inne argumenty za każdym razem w innej kolejności to okazuje się, że niemal każde wywołanie ma inne ich ustawienie. Może to taki zabieg stylistyczny? Może twórcy WebAPI są romantykami jak Mickiewicz?

Ludzie listy piszą

Dziś postanowiłem zamieścić po prostu odpowiedzi na niektóre wasze pytania (takie FAQ), jako że szczególnie drugie z nich jest dość ważne, to zamieszczam krótkie uaktualnienie:

Jak długo Twoim zdaniem trwa załatwianie klucza?
Różnie, zazwyczaj bardzo krótko (kilkanaście-dziesiąt minut), jednak nie wiem jak to jest z weekendami i godzinami pracy, więc jeśli wyślecie zapytanie w piątek wieczorem, możliwe, że otrzymacie klucz dopiero w poniedziałek w dzień.
Po ostatniej zmianie (10.02.2009) operacji doGetPostBuyData() w Allegro WebAPI skrypt PHP "Pobieranie danych klientów" który znalazłem na Twojej stronie przestał działać.
Zmiana ta powoduje tak na prawdę po prostu zgodność teorii z dokumentacji z praktyką. Oznacza to inny sposób odwoływania się do poszczególnych składowych. Oto jak ten kod powinien wyglądać teraz (zmieniła się jedynie część odpowiedzialna za przetwarzanie danych z odpowiedzi):
    foreach($customers as $customer)
    {
        $data[ $customer->{'item-id'} ] = $customer->{'users-post-buy-data'};
    }

    foreach($data as $id => $customers)
    {
        // każdy element tablicy aukcji jest kolejną tablicą - klientów, którzy w tej aukcji zakupili towar
        foreach($customers as $customer)
        {
            echo $id, ', ', $customer->{'user-data'}->{'user-login'}, '<br />', "\n";
        }
    }

Tags: Code, Tutorial, Allegro, WebAPI, PHP, SOAP