Query-Strings erzeugen aus flachen JSON-Objekten. Array-Werte erzeugen wiederholte Schlüssel; Eigenschaften mit null und undefined werden übersprungen. Die Ausgabe lässt das führende Fragezeichen weg, damit Sie es beim Zusammenbau vollständiger URLs für HTTP-Clients, Tests und Agenten-Fetch-Wrapper ergänzen können.
So funktioniert es
Das Wurzel-JSON-Objekt wird Schlüssel für Schlüssel durchlaufen. Skalare Werte werden mit Standard-URL-Parameterkodierung (encodeURIComponent) kodiert. Array-Werte erzeugen mehrere key=value-Paare mit demselben Schlüsselnamen. Einträge mit null und undefined entfallen ganz. Paare werden mit & in stabiler Einfügereihenfolge des geparsten Objekts verbunden.
Wann Sie es nutzen
- GET-Request-URLs in Agenten-HTTP-Clients und Integrationstests bauen
- Formularfelder für Mocks serialisieren, ohne Leerzeichen oder Symbole manuell zu escapen
- Roundtrip mit dem parse-query-string-Tool, um das Kodierungsverhalten zu prüfen
- Signierte Webhook-Callback-URLs aus strukturierten Konfigurationsobjekten erzeugen
Beispiel
{"q":"hello world","page":2} wird zu q=hello+world&page=2 (Leerzeichen können als + oder %20 erscheinen, je nach Encoder). Arrays wie {"tag":["a","b"]} werden zu tag=a&tag=b.
Einschränkungen
Der JSON-Wurzelwert muss ein Objekt sein—kein Array und keine bloße Zeichenkette. Verschachtelte Objekte werden nicht automatisch flach gemacht; serialisieren Sie verschachtelte Strukturen vor der Kodierung, wenn Sie einen Wert pro Schlüssel brauchen. Die Verarbeitung läuft im Browser; sehr große Objekte können langsam serialisieren.