Kreator URL
Złóż URL z konfiguracji JSON — kodowanie obsłużone, powtarzające się klucze wspierane
Konfig (JSON)
URL
Czym jest Kreator URL?
Podajesz obiekt JSON opisujący części URL — protokół, host, ścieżkę, parametry zapytania, hash — a narzędzie zwraca Ci złożony URL, poprawnie zakodowany procentowo. Pod spodem używa natywnego URL API przeglądarki, więc wynik jest dokładnie taki sam jak to, co przeglądarka by wygenerowała, gdybyś sam zbudował URL w JavaScripcie.
Po co to jest: budowanie URL ręcznie to miejsce, gdzie chowają się bugi. Zapominasz zakodować spację w nazwisku klienta, podwójnie kodujesz slash, który już był zakodowany, mylisz ? z &, gubisz wartość, bo użyłeś + zamiast %20. Specyfikacja URL WHATWG definiuje dokładnie jedną poprawną odpowiedź dla każdego wejścia, i to właśnie tutaj dostajesz. Powtarzające się klucze zapytań (np. tag=red&tag=blue) są wspierane przez podanie tablicy — taki sam format akceptuje URLSearchParams.
Działa w całości w Twojej przeglądarce. Konfiguracja JSON i złożony URL nigdy nie opuszczają Twojej maszyny. Reguły kodowania pochodzą wprost z RFC 3986 i nadbudowanych nad nim doprecyzowań WHATWG. Połącz go z Parserem URL, gdy chcesz zrobić rundę URL przez ustrukturyzowany formularz.
Jak korzystać z Kreatora URL
Trzy kroki. Każdy odpowiada przyciskowi na tej stronie.
Wklej konfigurację JSON
Wklej po lewej obiekt JSON opisujący części URL. protocol i host są wymagane; reszta jest opcjonalna. Kliknij Przykład, aby załadować realistyczny przypadek z kilkoma parametrami zapytania i hashem:
{
"protocol": "https",
"host": "api.shop.example.com",
"pathname": "/v1/orders",
"searchParams": {
"customer": "Ava Chen",
"status": "active",
"total[gte]": "49.99",
"page": "2"
},
"hash": "summary"
}Pola opcjonalne: port, username, password, hash. Wewnątrz searchParams string to jedna wartość; tablica to powtarzające się klucze.
Odczytaj złożony URL
Prawy panel pokazuje złożony string URL. Spacje stają się + w query string, nawiasy kwadratowe stają się %5B/%5D, ścieżka jest normalizowana — to samo kodowanie, które definiuje standard URL. Aktualizuje się w trakcie pisania.
Skopiuj lub pobierz
Kliknij Kopiuj, aby wysłać URL do schowka, albo Pobierz, aby zapisać jako plik tekstowy. Użyj Wyczyść w panelu wejścia, aby zacząć od nowa.
Kiedy faktycznie tego użyjesz
Tworzenie fixture'ów testowych dla klienta HTTP
Piszesz test, który uderza w /v1/orders z ośmioma parametrami zapytania, dwa zawierają spacje, a jeden się powtarza. Wpisywanie zakodowanego URL ręcznie do testu to prosta droga do błędu. Zbuduj go z obiektu JSON, który możesz skopiować z prawdziwego logu requestów, i wklej powstały URL do asercji. Gotowe.
Budowanie URL-i autoryzacji OAuth
URL-e autoryzacji OAuth upychają client_id, redirect_uri, scope, state, response_type i code_challenge w query string. RFC 6749 wymaga dokładnie tych nazw parametrów oraz redirect_uri już raz zakodowanego, zanim cały URL zostanie zakodowany ponownie. Kreator robi to przezroczyście — Ty podajesz surowe wartości, a on robi to, co trzeba.
Generowanie URL-i analitycznych lub do udostępniania w skrypcie
Gdy generujesz URL kampanii z parametrami UTM, wartości często pochodzą z arkusza, gdzie utm_campaign zawiera spacje, ampersandy i czasem emoji. Pozwolić konstruktorowi URL zająć się kodowaniem jest bezpieczniej niż szablon stringów. Wynik jest identyczny z tym, co produkuje moduł URL Node'a.
Odtwarzanie buga ze zgłoszenia supportu
Klient zgłasza, że wyszukiwanie z q=résumé writer zwraca 500 w API. Chcesz odtworzyć dokładnie ten request. Zbuduj URL z JSON-a, potem uderz curlem. Akcent nad e i spacja zostaną zakodowane tak, jak zrobiłaby to przeglądarka — bez zgadywania.
Częste pytania
Jaka jest różnica między Kreatorem URL a sklejaniem stringów samemu?
Kodowanie. https://api.example.com/orders?customer=Ava Chen nie jest poprawnym URL — spacja go psuje. Kreator używa wewnętrznie URLSearchParams, które koduje tę spację jako + w query i jako %20 w ścieżce. Ręczne sklejanie stringów prędzej czy później skopie jedną z tych dwóch rzeczy.
Jak wysłać parametr zapytania dwa razy (np. ?tag=red&tag=blue)?
Użyj tablicy jako wartości: "tag": ["red", "blue"]. Kreator emituje tag=red&tag=blue w podanej kolejności. Zgodne ze specyfikacją URLSearchParams.
Czy muszę dodawać dwukropek po protokole (https:), czy wystarczy https?
Obie wersje działają. Kreator normalizuje zarówno "protocol": "https", jak i "protocol": "https:" do https:. Tak samo dla http, ftp, mailto i własnych schematów.
Czy mogę umieścić poświadczenia (login/hasło) w URL?
Tak — ustaw "username" i "password" w konfiguracji. Pojawią się przed hostem jako user:pass@host. Pamiętaj jednak, że RFC 3986 §3.2.1 ostrzega przed tym w produkcyjnych URL-ach, bo lądują w historii przeglądarki, logach serwera i cache'ach proxy.
Dlaczego moja spacja staje się + zamiast %20?
Spacje w komponencie zapytania są zwykle kodowane jako + zgodnie z regułami application/x-www-form-urlencoded — to właśnie produkuje URLSearchParams. Spacje w ścieżce są kodowane jako %20. Obie formy są poprawne; serwery dekodują obie. Jeśli Twój serwer jest popsuty i obsługuje tylko %20, masz większy problem niż to narzędzie.
Inne narzędzia URL & JSON
Budowanie to jeden kierunek. Oto co naturalnie się z tym łączy: