मैं एक संसाधन है कि एक .
मेरी URL ऐसा दिखाई देगा इसका मतलब है यह: http://myapp/index/ .
और मुझे क्वेरी पैरामीटर जोड़ने के लिए इतना है कि यह इस तरह दिखता है की जरूरत है: http://myapp/index/.?type=xml
मैं अपने संसाधनों की प्रस्तुति के लिए Freemarker का उपयोग करें और इस मामले के लिए एक प्रतिशत-एन्कोडिंग हैक किए गए:एक url संसाधन में एक बिंदु (% 2 ई) है कि
<#if key?matches("\\.")>
<li><a href="${contextPath}/index/%2E">${key}</a></li>
</#if>
यह Firefox के लिए ठीक काम करता है। लेकिन आईई, सफारी, क्रोम, ओपेरा जैसे अन्य सभी ब्राउज़र्स बस मेरे यूआरएल एन्कोडेड डॉट (http://myapp/index/%2E
) को अनदेखा करते हैं।
कोई सुझाव?
मुझे लगता है कि मुझे लगता है कि न करे तो, THX है। – cuh
मुझे पता चला है कि भले ही% 2e यूआरएल का हिस्सा है, उदा। 'http: // localhost/अनुक्रमणिका% 2ehtml', फ़ायरफ़ॉक्स (14) और क्रोम इसे '.' में परिवर्तित कर देता है। यह खंड 2.3 में निर्दिष्ट है। बाद में धारा 3.3 में, यह कहता है कि '.' और' ..' पथनाम के भीतर सापेक्ष संदर्भ के लिए हैं। तो, 'http: // localhost /% 2e' का अर्थ अनिवार्य रूप से' http: // localhost/'होगा। – slowpoison
अच्छा बिंदु, @ स्लोपॉइसन - "यूआरआई जो एक अनारक्षित चरित्र के प्रतिस्थापन में भिन्न है, इसके इसी प्रतिशत-एन्कोडेड यूएस-एएससीआईआई ऑक्टेट समकक्ष", और "।" एक अनारक्षित चरित्र है। ठीक है। – phyzome