Ga naar inhoud
100% lokaal

JSON Patch-toepasser

Pas een RFC 6902 JSON Patch (of RFC 7396 merge patch) toe op een JSON-document.

Invoer
Patch (JSON)
Uitvoer

JSON Patch-toepasser

Plak een JSON-document en een patch, en dit hulpmiddel past de patch toe en retourneert het resulterende document. Het ondersteunt zowel RFC 6902 JSON Patch — de standaard array van add-, remove-, replace-, move-, copy- en test-bewerkingen — als RFC 7396 JSON Merge Patch, het eenvoudigere "beschrijf eenvoudig de vorm die je wilt"-formaat dat door veel REST-API's voor PATCH-verzoeken wordt gebruikt.

Voordat iets wordt uitgevoerd, wordt de patch gecontroleerd op structurele problemen: een onbekende bewerkingsnaam, een ontbrekend of onjuist geformatteerd "pad", een ontbrekende "waarde" voor add/replace/test, of een ontbrekende "van" voor move/copy worden allemaal vooraf onderschept en gerapporteerd met de exacte bewerkingsindex, in plaats van halverwege mislukken. Zodra een patch deze controle doorstaat, bepaalt de on-error-optie wat er gebeurt als een afzonderlijke bewerking nog steeds mislukt tijdens toepassing (een pad dat niet meer bestaat, een test die niet overeenkomt): stop bij de eerste fout en behoud wat al is toegepast, of sla deze over en ga verder. Zet de stap-voor-stap-trace aan om het document na elke afzonderlijke bewerking te zien — van onschatbare waarde wanneer een negen-staps patch iets onverwachts doet in stap zes. Proefweergave berekent alles zonder de uitvoer te wijzigen, zodat u kunt controleren of een patch veilig is voordat u erop vertrouwt.

JSON-aanwijzerpaden volgen RFC 6901 exact, inclusief het token "-" voor array-toevoegen en de escapesequenties ~0 / ~1 voor "~" en "/" in een sleutel. Move en copy lezen de bron met "van" en schrijven met "pad"; test vergelijkt structureel en negeert de objectsleutelolgorde. De uitvoer kan voor leesbaarheid worden ingesprongen of gecompacteerd om in een API-aanroep te plakken, en de samenvatting rapporteert hoeveel bewerkingen zijn toegepast, mislukt of zijn overgeslagen.

Alles wordt lokaal in uw browser uitgevoerd — het document en de patch worden nooit ergens naartoe geüpload, dus het is veilig om te gebruiken met echte API-payloads of configuratiebestanden. Kopieer het resultaat, download het als .txt-bestand, of stuur het rechtstreeks terug naar de invoer om nog een patch erop toe te passen.

FAQ

Wat is het verschil tussen JSON Patch en JSON Merge Patch?
JSON Patch (RFC 6902) is een expliciete lijst van operaties — voeg dit toe, verwijder dat, verplaats dit hierheen — zodat het precieze wijzigingen kan uitdrukken zoals het herschikken van een array. JSON Merge Patch (RFC 7396) is slechts een gedeeltelijk JSON-object dat de gewenste vorm beschrijft; een sleutel ingesteld op null verwijdert deze, alles anders overschrijft deze. Merge patch is eenvoudiger met de hand te schrijven, maar kan arraywijzigingen of "verwijder deze sleutel" tegenover "stel in op null" niet ondubbelzinnig uitdrukken.
Wat gebeurt er als een bewerking halverwege mislukt?
Met "stop bij eerste fout" blijven al toegepaste bewerkingen toegepast en worden de rest overgeslagen — de samenvatting en trace geven exact aan waar het is gestopt. Met "overslaan en doorgaan" wordt elke bewerking geprobeerd en worden alleen de mislukte bewerkingen uit het resultaat gelaten.
Wat doet een proefweergave eigenlijk?
Proefweergave valideert de patch en simuleert elke bewerking, zodat de samenvatting en trace exact tonen wat zou gebeuren, maar het uitvoervak toont nog steeds uw originele, ongewijzigde document. Niets wordt "geschreven" ergens in een browserhulpmiddel — het is een manier om het effect van een patch voor te bekijken voordat je erop vertrouwt.
Valideert het de patch voordat het deze toepast?
Ja. Een onbekende bewerkingsnaam, een pad dat geen geldige JSON-aanwijzer is, of een ontbreken "waarde"/"van" veld worden allemaal onderschept voordat een bewerking wordt uitgevoerd, en de fout noemt de bewerkingsindex zodat u deze in een lange patch kunt vinden.
Wordt mijn JSON ergens naartoe geüpload?
Nee. Zowel het document als de patch worden volledig in uw browser verwerkt en verlaten uw apparaat nooit.