Samouczek API WebPagetest z przykładem
Zanim dowiemy się więcej o interfejsie API webpagetest, zrozummy:
Co to jest WebPagetest?
Webpagetest to jedno z najpopularniejszych i darmowych narzędzi do pomiaru wydajności stron internetowych. Webpagetest umożliwia przeprowadzanie testów wydajności sieci w Twojej witrynie z wielu różnych lokalizacji na świecie i w wielu różnych przeglądarkach.
Wejdź na swoją stronę i kliknij Rozpocznij test. Następnie zobaczysz okno wyjściowe jak poniżej
Na tej stronie możesz znaleźć wartości dla następujących parametrów swojej strony internetowej
- Czas ładowania – czas wymagany do załadowania strony
- Czas pierwszego bajtu — czas rozpoczęcia wykonywania żądania
- Rozmiar strony — całkowity rozmiar Twojej strony internetowej
- Żądania – liczba żądań wysłanych przez Twoją stronę internetową.
Interfejs API WebPagetest
Webpagetest ma 2 podstawowe API
- Aby uruchomić testy – http://www.webpagetest.org/runtest.php.
- Aby sprawdzić status testu – http://www.webpagetest.org/testStatus.php
- Aby uzyskać wyniki testu – http://www.webpagetest.org/testStatus.php
Aby uruchomić testy:
- Aby uruchomić test, możesz wykonać polecenie GET lub POST http://www.webpagetest.org/runtest.php.
- W odpowiedzi zostaniesz przekierowany na stronę wyników lub otrzymasz odpowiedź w formacie XML (w zależności od tego, czy zażądano formatu XML).
- Aby korzystać z interfejsu Webpagetest API, potrzebujesz klucza API i musisz skontaktować się z wepagetest.org, aby uzyskać klucz API. Za pomocą tego klucza API możesz przesłać maksymalnie 100 testów dziennie, a więcej potrzebujesz prywatnej instancji. W przypadku instancji prywatnej – skonfiguruj środowisko testowe na własnym serwerze.
- Próbka - http://www.webpagetest.org/runtest.php?url=guru99.com&runs=1&f=xml&k=<your-api-key>
Ustaw parametry
- URL – adres URL, który ma zostać przetestowany
- przebiegi – liczba przebiegów testowych
- fvonly – Ustaw na 1, aby pominąć test Powtórzenia widoku
- f – Format odpowiedzi. Ustaw na XML, aby zażądać odpowiedzi XML lub JSON w przypadku odpowiedzi zakodowanej w formacie JSON
- k – Klucz API (wymagane w przypadku instancji publicznej)
Aby sprawdzić status testu
- Po wysłaniu testu otrzymasz następującą odpowiedź XML.
- Sprawdź pole testId w odpowiedzi i zanotuj je
- Webpagetest jest darmowym i popularnym narzędziem, dlatego aby zapewnić uczciwe wykorzystanie, Twoje zgłoszenie musi stać w kolejce i czekać na swoją kolej.
- Możesz sprawdzić status testu, wykonując GET na http://www.webpagetest.org/testStatus.php, podając swój identyfikator testu.
- Przykład - http://www.webpagetest.org/testStatus.php?f=xml&test=141107_12_BXZ
Informacje te zawierają identyfikator testu, czas rozpoczęcia, liczbę żądanych uruchomień testu itp.
Aby sprawdzić wyniki testu
Przekaż testowane do API – http://www.webpagetest.org/xmlResult/141107_12_BXZ/
Wyniki testu zobaczysz w formacie XML, jak poniżej
Przykładowy kod PHP do korzystania z interfejsu API Webpagetest
<?php $url = <a href=https://www.guru99.com //url to test $api_key = "<your-copy-api-key>"; // your api key $webpagetest = "http://www.webpagetest.org/runtest.php?url=$url&runs=1&f=xml&k=$api_key"; $xmlres = simplexml_load_file($webpagetest); $testid = $xmlres->data->testId; echo "Test id : ".$testid." For url : ".$url; ?>
- Teraz Zadzwoń ponownie po pewnym czasie, aby uzyskać wyniki testu
<?php $test_id = "<test-id-you-got-from-request-call>"; $weburl = "http://www.webpagetest.org/xmlResult/$test_id/"; $xmlres = simplexml_load_file($weburl); if($xmlres){ $loadtime = ($xmlres->data->average->firstView->loadTime)/1000; echo "WebPage loadtime is : ".$loadtime; } ?>