दिलचस्प पोस्ट
यूपी मेल webservice एपीआई के लिए php साबुन क्लाइंट? अक्षम फॉर्म इनपुट अनुरोध में प्रकट नहीं होते हैं स्ट्रिंग मान का उपयोग करके एक चर नाम बनाना क्यों .bss सेगमेंट की आवश्यकता है? JQuery के साथ "व्यस्त" सूचक को कैसे प्रदर्शित किया जाए? मैं "खोज" से सभी "अनुमति अस्वीकृत" संदेशों को कैसे बाहर निकाल सकता हूं? कितना अच्छा है java.util.Random? सामग्री ऊंचाई के अनुसार iframe की ऊंचाई का आकार बदलें नीचे दाएं कोने पर बॉर्डरलेस विंडो का आकार बदलें बाहरी संग्रहण से बिटमैप लोड करते समय आउटऑफिममी अपवाद जावा में 'एसएएम प्रकार' क्या है? टेक्स्ट JavaScript से एचटीएमएल स्ट्रिप करें प्रमाणपत्र नामांकन प्रक्रिया कैसे एक वस्तु पर पिछले उम्मीदों को साफ करने के लिए? एंड्रॉइड में एसएमएस और एमएमएस भेजने और प्राप्त करना (प्री किट कैट एंड्रॉइड 4.4)

मैं यूआरआई पैरामीटर मान कैसे एन्क्रिप्ट करूं?

मैं एक क्वेरी / मैट्रिक्स पैरामीटर के मान के रूप में एक यूआरआई भेजना चाहता हूं। इससे पहले कि मैं इसे किसी मौजूदा यूआरआई में जोड़ सकता हूं, मुझे आरएफसी 23 9 के अनुसार इसे सांकेतिक शब्दों में लिखना होगा। उदाहरण के लिए, इनपुट दिया गया है:

http://google.com/resource?key=value1 & value2

मुझे उम्मीद है कि आउटपुट:

http%3a%2f%2fgoogle.com%2fresource%3fkey%3dvalue1%2520%26%2520value2

न ही java.net.URLEncoder और न ही java.net.URI सही आउटपुट उत्पन्न करेगा। URLEncoder एचटीएमएल फॉर्म एन्कोडिंग के लिए है जो कि आरएफसी 2396 के समान नहीं है। URI में एक समय में एक ही एन्कोडिंग के लिए कोई तंत्र नहीं है, इसलिए यह जानने का कोई तरीका नहीं है कि value1 और value2 उसी कुंजी का हिस्सा हैं

Solutions Collecting From Web of "मैं यूआरआई पैरामीटर मान कैसे एन्क्रिप्ट करूं?"

आवश्यकतानुसार जर्सी के उरीबिल्डर ने यूआरआई घटक का इस्तेमाल करते हुए / x-www-form-urlencoded और आरएफसी 3986 का इस्तेमाल किया है। जवादाक के मुताबिक

बिल्डर विधि अनुप्रयोगों के पैरामीटर और अन्य सभी घटकों के लिए RFC 3986 के लिए अनुप्रयोग / x-www-form-urlencoded मीडिया प्रकार के नियमों के अनुरूप संबंधित यूआरआई घटक में अनुमत वर्णों की प्रासंगिक एन्कोडिंग प्रदर्शन करते हैं। ध्यान दें कि केवल एक विशेष घटक में वर्णों की अनुमति नहीं है, इसलिए एन्कोडिंग के अधीन होते हैं, उदाहरण के लिए, पथ तरीकों में से एक पथ को मैट्रिक्स पैरामीटर या एकाधिक पथ से हो सकता है क्योंकि विभाजक कानूनी अक्षर हैं और एनकोड नहीं किए जाएंगे। प्रतिशत एन्कोडेड मान भी पहचाने जाते हैं जहां अनुमति दी जाती है और डबल एन्कोड नहीं किया जाएगा।

आप स्प्रिंग की उरीयूटील्स भी इस्तेमाल कर सकते हैं

मेरे पास उत्तर पर टिप्पणी करने के लिए पर्याप्त प्रतिष्ठा नहीं है, लेकिन मैं सिर्फ यह जानना चाहता हूं कि जेएसआर -311 एपीआई डाउनलोड करना स्वयं काम नहीं करेगा। आपको संदर्भ कार्यान्वयन ( जर्सी ) को कम से कम डाउनलोड करना होगा।

एपीआई रनटाइम पर एक कार्यान्वयन की खोज करने की कोशिश करता है, बस जेएसआर पृष्ठ से एपीआई डाउनलोड करने से आपको क्लास नॉटफ़ाउंड अपवाद दिया जाएगा।

मैंने अपना लिखा, यह छोटा, सुपर सरल है, और यदि आप चाहें तो इसे कॉपी कर सकते हैं: http://www.dmurph.com/2011/01/java-uri-encoder/

ऐसा लगता है कि Google GData-java-client के CharEscapers को आप क्या चाहते हैं इसमें uriPathEscaper विधि, uriQueryStringEscaper, और सामान्य uriEscaper है (सभी वापसी एस्कर ऑब्जेक्ट जो वास्तविक बचने वाला है) अपाचे लाइसेंस

मुझे लगता है कि यूआरआई वर्ग वह है जिसे आप तलाश रहे हैं।

एमएमएचएच मुझे पता है कि आपने यूआरएलएनकोडर को पहले से ही खारिज कर दिया है, लेकिन डॉक्स के होने के बावजूद मैंने इसे एक कोशिश देने का फैसला किया।

तुमने कहा था:

उदाहरण के लिए, एक इनपुट दिया गया है:

http://google.com/resource?key=value

मुझे उम्मीद है कि आउटपुट:

http% 3a% 2f% 2fgoogle.com% 2fresource% 3fkey% 3dvalue

इसलिए:

 C:\oreyes\samples\java\URL>type URLEncodeSample.java import java.net.*; public class URLEncodeSample { public static void main( String [] args ) throws Throwable { System.out.println( URLEncoder.encode( args[0], "UTF-8" )); } } C:\oreyes\samples\java\URL>javac URLEncodeSample.java C:\oreyes\samples\java\URL>java URLEncodeSample "http://google.com/resource?key=value" http%3A%2F%2Fgoogle.com%2Fresource%3Fkey%3Dvalue 

जैसा सोचा था।

इस के साथ क्या समस्या होगी?