Lokalne testowanie API

Jak odbierać callbacki urządzeń na komputerze deweloperskim i testować polecenia REST w Postman przed wdrożeniem.

Testowanie lokalne (bez wdrażania na serwerze)

Aby przetestować integrację callbacków z lokalnego komputera deweloperskiego — bez wdrażania na serwer produkcyjny — musisz udostępnić swój komputer w internecie, aby Cams Protocol Engine mógł wysyłać do niego dane callbacków metodą POST.

Opcja A: publiczny IP + przekierowanie portów

Jeśli Twoje łącze internetowe ma publiczny (stały) adres IP, możesz przekierować zewnętrzny port do swojej lokalnej aplikacji.

1

Sprawdź swój publiczny IP

Odwiedź whatismyip.com lub uruchom curl ifconfig.me w terminalu. Zapisz swój publiczny adres IP.

2

Skonfiguruj przekierowanie portów na routerze

Zaloguj się do panelu administracyjnego routera. Przekieruj zewnętrzny port (np. 8080) na wewnętrzny adres IP Twojego komputera i port, na którym działa Twoja aplikacja (np. 3000, 5000, 8080).

3

Skonfiguruj Callback URL

W API Monitor ustaw Callback URL na:
http://YOUR_PUBLIC_IP:8080/callback

4

Test

Wywołaj odbicie na urządzeniu biometrycznym. Cams Protocol Engine wyśle dane callbacku metodą POST na Twój publiczny IP, a router przekaże je do Twojej lokalnej aplikacji.

Opcja B: narzędzia do tunelowania (publiczny IP niepotrzebny)

Jeśli nie masz publicznego IP lub nie możesz skonfigurować przekierowania portów, użyj usługi tunelowania, aby udostępnić swój lokalny serwer w internecie.

NarzędziePolecenieUwagi
ngrokngrok http 3000Dostępny plan darmowy. Natychmiast zapewnia publiczny adres URL HTTPS.
Cloudflare Tunnelcloudflared tunnel --url localhost:3000Bezpłatne. Szybkie tunele nie wymagają konta.
localhost.runssh -R 80:localhost:3000 ssh.localhost.runBez instalacji. Działa przez SSH.
1

Uruchom swoją lokalną aplikację

Uruchom lokalnie swój serwer callbacków (np. php -S localhost:8080 lub node server.js lub python app.py).

2

Uruchom tunel

Uruchom narzędzie do tunelowania. Wypisze ono publiczny adres URL, np. https://abc123.ngrok-free.app.

3

Skonfiguruj Callback URL

W API Monitor ustaw Callback URL na adres URL tunelu:
https://abc123.ngrok-free.app/callback

4

Test

Wywołaj odbicie. Callbacki będą przepływać przez tunel do Twojego lokalnego komputera w czasie rzeczywistym.

Ważne: Adresy URL tuneli są tymczasowe i zmieniają się przy każdym ponownym uruchomieniu narzędzia (chyba że korzystasz z płatnego planu z zarezerwowanymi domenami). Za każdym razem, gdy otrzymasz nowy adres URL tunelu, zaktualizuj Callback URL w API Monitor.
Testowanie RESTful API nie wymaga tej konfiguracji. Możesz wywoływać endpoint RESTful bezpośrednio z lokalnego komputera za pomocą Postman lub własnego kodu — bez przekierowania portów i tunelowania. Tylko Callback API (ruch przychodzący z Cams do Twojego serwera) wymaga, aby Twój komputer był dostępny z internetu.

Testowanie adresu URL

Przed uruchomieniem produkcyjnym zweryfikuj swoje endpointy w Postman. Udostępniamy gotową kolekcję ze wszystkimi 27 operacjami RESTful wstępnie skonfigurowanymi.

Kolekcja Postman

Pobierz i zaimportuj do Postman. Ustaw zmienne base_url, stgid i auth_token — i od razu zacznij testować.

📥 Pobierz kolekcję Postman
1

Zaimportuj kolekcję

Otwórz Postman → Import → przeciągnij i upuść pobrany plik .json. Wszystkie 27 operacji RESTful pojawi się pogrupowanych według kategorii.

2

Ustaw zmienne

Przejdź do karty Variables kolekcji i ustaw:
base_url = adres URL Twojego endpointu RESTful (z API Monitor)
stgid = Service Tag ID Twojego urządzenia
auth_token = AuthToken Twojego urządzenia

3

Wysyłaj żądania

Wybierz dowolną operację, zmodyfikuj ciało JSON, wstawiając swoje wartości, i kliknij Send. Sprawdź, czy odpowiedź zgadza się z oczekiwanym formatem opisanym powyżej.

Przykład w Postman

Poniżej zrzut ekranu z przykładowym żądaniem API skonfigurowanym w Postman. Ustaw metodę POST, wklej adres URL endpointu RESTful z ?stgid= i użyj ciała raw JSON.

Zrzut ekranu Postman przedstawiający konfigurację żądania Cams API
Przetestuj też swój endpoint Callback. Wyślij metodą POST przykładowy JSON RealTimePunchLog (zob. Op #11) na swój Callback URL i sprawdź, czy serwer zwraca {"status":"done"} z HTTP 200.