Een URL decoderen met JavaScript

In een eerder artikel hebben we gekeken naar verschillende manieren om een ​​URL in JavaScript te coderen. In dit artikel leert u hoe u een gecodeerde URL kunt decoderen in JavaScript.

URL-decodering is het tegenovergestelde van het coderingsproces. Het converteert de gecodeerde URL-strings en queryparameters terug naar hun normale formaten. Meestal worden gecodeerde queryreeksparameters automatisch gedecodeerd door het onderliggende raamwerk dat u gebruikt, zoals Express of Spring Boot. In zelfstandige toepassingen moet u echter de queryreeksen handmatig decoderen.

Laten we eens kijken naar de native JavaScript-functies die voor dit doel kunnen worden gebruikt.

decodeURI()

De decodeURI() functie wordt gebruikt om een ​​volledige URL in JavaScript te decoderen. Het voert de omgekeerde . uit werking van encodeURI() . Hier is een voorbeeld:

const encodedUrl = 'http://example.com/!leearn%20javascript$/';

// decode complete URL
const url = decodeURI(encodedUrl);

// print decoded URL
console.log(url);

// output: http://example.com/!leearn javascript$/

decodeURIComponent()

De decodeURIComponent() functie wordt gebruikt om URL-componenten te decoderen die coderen met encodeURIComponent() in javascript. Het gebruikt UTF-8 coderingsschema om de decoderingsbewerking uit te voeren.

Je moet decodeURIComponent() . gebruiken om queryreeksparameters en padsegmenten te decoderen in plaats van volledige URL's. Hier is een voorbeeld:

const query = "Danke Schön";

// perofrm encode/decode
const encodedStr = encodeURIComponent(query);
const decodedStr = decodeURIComponent(encodedStr);

// print values
console.log(`Encoded Query: ${encodedStr}`);
console.log(`Decoded Query: ${decodedStr}`);

// Output
// Encoded Query: Danke%20Sch%C3%B6n
// Decoded Query: Danke Schön

Lees volgende: Base64-codering en decodering in JavaScript