Powrót do bloga
Programowanie

Narzędzia programisty online — JSON, regex, JWT i cron

Zastosowania formatera, testera regex i narzędzi developerskich; granice walidacji, weryfikacji tokenów i minifikacji.

Weboteka7 marca 20262 min czytania

Zestaw narzędzi do sprawdzania danych i kodu

Formatowanie JSON, testowanie wyrażeń regularnych, dekodowanie JWT i przygotowanie harmonogramu cron rozwiązują różne problemy. Wynik jednego narzędzia nie zastępuje walidacji, testów aplikacji ani oceny bezpieczeństwa.

JSON i minifikacja

JSON Formatter parsuje wejście i porządkuje wcięcia albo usuwa zbędne białe znaki. Nie zgaduje poprawnej wartości brakującego pola. Komunikat oraz pozycja błędu zależą także od silnika przeglądarki. Walidacja składni nie potwierdza zgodności ze schematem API.

Minifikacja kodu wymaga parsera odpowiedniego języka. Po zmianie sprawdź wynik w aplikacji. Rozmiar przed gzip lub Brotli i rzeczywisty transfer po kompresji to różne pomiary. Nie można obiecać stałej redukcji procentowej dla wszystkich plików.

Przykład arytmetyczny, nie pomiar Weboteki: zmniejszenie zasobu z 45 kB do 18 kB daje 27 kB różnicy. Przy milionie pełnych pobrań dziennie przez 30 dni to 810 GB w jednostkach dziesiętnych, przed uwzględnieniem cache i kompresji transportowej.

Wyrażenia regularne

Tester regex pomaga obserwować dopasowania dla przykładów poprawnych i błędnych. Wzorzec kształtu daty YYYY-MM-DD nie sprawdza, czy dany dzień istnieje. Prosty regex adresu URL nie zastępuje parsera URL ani polityki dozwolonych protokołów.

Sprawdzaj polskie znaki, pusty tekst i długie wejście. Nieprzemyślane wzorce mogą być kosztowne obliczeniowo. Składnia i flagi zależą od silnika; wzorzec z JavaScript nie musi działać identycznie w innym języku. MDN: wyrażenia regularne.

JWT: odczyt to nie weryfikacja

Typowy podpisany JWT w formacie JWS ma trzy segmenty, ale JWT może być również szyfrowany jako JWE. Odczyt nagłówka i payloadu nie potwierdza autentyczności. Dopiero prawidłowa weryfikacja podpisu, dozwolonego algorytmu, wystawcy, odbiorcy i ograniczeń czasowych pozwala używać danych do decyzji o dostępie. Przy algorytmach asymetrycznych weryfikacja wykorzystuje klucz publiczny. RFC 7519.

Do eksperymentów używaj przykładowego tokenu bez dostępu do rzeczywistego konta.

Cron i SQL

Standardowy cron ma pięć pól czasu, po których następuje polecenie. Wyrażenie 0 9 * * 1-5 oznacza dni robocze o 09:00 w strefie harmonogramu. Rozszerzenie L dla ostatniego dnia miesiąca nie należy do podstawowego POSIX cron. Sprawdź składnię konkretnego harmonogramu oraz zachowanie przy zmianie czasu. POSIX crontab.

Formatowanie SQL poprawia czytelność; nie wykonuje zapytania ani nie dowodzi jego poprawności dla konkretnej bazy. Po automatycznych zmianach uruchom adekwatne testy na danych testowych.

Udostępnij artykuł

Powiązane narzędzia

Powiązane artykuły