मैं प्रवेश किया Chrome की कंसोल में निम्नलिखित:जावास्क्रिप्ट decodeURI (घटक) विकृत URI अपवाद
decodeURIComponent('a%AFc');
इसके बजाय
a0xAFc
के परिणामस्वरूप की
, यह एक URIError अपवाद (विकृत URI) का कारण बना।
मैंने कई बहाने सुना है कि यह क्यों संभव हो सकता है, लेकिन मुझे समझ में नहीं आता क्यों?
decodeURIComponent()
विशेष रूप से कार्य को डीकोड करना चाहिए, यूआरआई को सत्यापित नहीं करना चाहिए।
मैं इसे बना के बाद मैं एन्कोडेड पाठ का भार डिकोडिंग की कोशिश की, विफल रही है और पाया है कि यह है कि विशेष चरित्र पर गला घोंटना होगा। शायद 'अनदेस्केप' मुझे चाहिए। – Christian
@ क्रिस्टियनसिबरबर 'एनकोडुरिकोम्पोनेंट() 'आमतौर पर बेहतर विकल्प होता है क्योंकि यह यूटीएफ -8 के साथ काम करता है। हालांकि, अपने आप पर '0xAF' मान्य यूटीएफ -8-एन्कोडेड वर्ण अनुक्रम नहीं है। यही कारण है कि आपका कोड काम नहीं करता है। मुझे उम्मीद है कि यह अब स्पष्ट है। – duri
तो अगर मुझे ASCII/iso-8859-1 प्रतिशत-एन्कोडेड इनपुट को संभालने की आवश्यकता है तो क्या होगा? 'अनदेस्केप' को बहिष्कृत किया गया है, और वहां 'unescapeURI' भी नहीं है – felixfbecker