हाल के एक प्रोजेक्ट में, मुझे एक बग की समस्या निवारण का आनंद मिला जिसमें छवियों को फ़ाइल नाम में रिक्त स्थान पर लोड नहीं किया गया था। मैंने सोचा "क्या एक साधारण मुद्दा है, मैं UrlEncode()
यह करूँगा!" लेकिन, नहीं! बस UrlEncode()
का उपयोग कर समस्या का समाधान नहीं किया।एएसपी.नेट में, UrlEncode() और UrlPathEncode() क्यों है?
नई समस्या HttpUtilities.UrlEncode()
विधि plusses लिए रिक्त स्थान () बंद (
+
) बजाय%20
के ब्राउज़र की तरह चाहता था। तो file+image+name.jpg
वापस नहीं मिलेगा जबकि file%20image%20name.jpg
सही ढंग से मिला था।
शुक्र है, एक सहकर्मी ने मुझे HttpUtilities.UrlPathEncode()
पर इंगित किया जो +
की जगह रिक्त स्थान के लिए %20
का उपयोग करता है।
यूआरएल एन्कोडिंग को संभालने के दो तरीके क्यों हैं? ऐसे दो आज्ञाएं क्यों हैं जो इतनी अलग तरीके से व्यवहार करती हैं?
या तो बेहतर समाधान के लिए http://stackoverflow.com/questions/602642/server-urlencode-vs-httputility-urlencode/603962#603962 देखें। –
संभावित डुप्लिकेट: http://stackoverflow.com/q/4145823/2291 –
@ मुफासा - mmm ... मुझे अंतर पता है। मैं सोच रहा हूँ क्यों। – quakkels