मुख्य सामग्री पर जाएं
CuteJSON
↑↓ नेविगेट करें Enter चुनें Esc बंद करें

Query string ke liye JSON ko URL encode kaise karein

प्रकाशित 2 मिनट का पाठ Akash Kinkar Pandey द्वारा

URL current roop mein JSON document nahi le ja sakta. Braces, quotes, spaces aur ASCII se upar sab kuch query string ya path segment mein jaane se pehle percent encode hona chahiye.

JSON URL encoder aur decoder ka upyog karna

Encode ya Decode chunein, apna document paste karein, aur Convert dabayein. Encoding wahi rule follow karta hai jo encodeURIComponent karta hai: har UTF-8 byte jo chhote safe set se bahar hai wo %XX escape ban jaata hai.

{"q":"a b+c","clef":"𝄞"}

encode hota hai %7B%22q%22%3A%22a%20b%2Bc%22%2C%22clef%22%3A%22%F0%9D%84%9E%22%7D, exactly wohi jo encodeURIComponent same document ke liye produce karta hai, musical symbol 𝄞 ko chaar alag %XX escapes ke roop mein shaamil karte hue, kyunki UTF-8 mein ye chaar bytes leta hai.

Akhiri option, aur kyun hai

“Space is a plus sign” on karein aur same document space ko %20 ke bajaye + encode karta hai, jabki data mein pehle se maujud literal + abhi bhi %2B ban jaata hai. Ye distinction isliye hai ki ye toggle hai assumption ke bajaye: URL ki query string aur form submission bare + ke matlab par agree nahi karte. Form body mein + space ka matlab hai. URL ke baaki har hissein mein + literal plus sign hai. Galat guess karna har plus ko space mein badal deta hai ya har encoded space ko literal plus chhod deta hai, jo ki sabse aam tareekon mein se ek hai jismein encoded document chupke se doosri taraf pahunchkar corrupt hota hai.

Decode, aur kyun ek pass mein hota hai

Decode poore string mein har percent-escaped byte gather karta hai aur unko UTF-8 ke roop mein ek baar decode karta hai, end mein, ek ek escape ke bajaye. Ek multi-byte character jaise emoji kai alag %XX escapes ke sequence mein aata hai, to har ek ko individually decode karke aur apna character maan lena ek emoji ko kai replacement characters mein badal dega. End mein ek baar decode karna multi-byte text ko intact rakhta hai, aur ye bhi allow karta hai ki jo bytes valid UTF-8 nahi hain unhein apne type ka failure report kiya ja sake, jo percent sign ke baad valid hex digits na ho alag hai, jo decodeURIComponent akela distinguish nahi kar sakta.

Round tripping

Upar ka example “Space is a plus sign” on karke encode karna aur phir decode karna exact original document lautata hai, "a b+c" aur musical symbol dono intact, jo ki asli test hai ki plus aur space handling dono directions mein agree karte hain.

सभी लेखों पर लौटें