HTTP प्रॉक्सी के लिए उपयोगकर्ता नाम / पासवर्ड में विशेष वर्णों का उपयोग कैसे करें?


26

मैं एक विंडोज़ मशीन पर एक HTTP प्रॉक्सी सेटअप करने की कोशिश कर रहा हूँ। समस्या यह है कि, पासवर्ड में एक विशेष वर्ण (@) है जो setकमांड को विफल कर रहा है।

मैंने चरित्र से बचने की कोशिश की है ( \@) और प्रतिशत-एन्कोडिंग इसे हेक्स मान ( %40) के साथ, कोई फायदा नहीं हुआ।

उदाहरण के लिए, उपयोगकर्ता Foo और पासवर्ड B @ r के साथ, मैंने निम्न आदेशों की कोशिश की है:

set http_proxy=http://foo:B\@r@http-gateway.domain.org:80
set http_proxy=http://foo:B%40r@http-gateway.domain.org:80

पासवर्ड बदलने के अलावा मैं प्रॉक्सी का उपयोग पासवर्ड कैसे कर सकता हूं?


क्या सेट फेल है या @ प्रतीक के कारण http_proxy पर्यावरण चर का उपयोग करने में विफल है?
माइक कॉर्नेल

हाँ। क्योंकि प्रारूप उपयोगकर्ता नाम है: पासवर्ड @ सर्वर: पोर्ट, आपके पासवर्ड के बीच में @ होने से आपके पासवर्ड का दाहिना हाथ होस्टनाम माना जाता है, इस प्रकार ऊपर दिया गया होस्टनाम रिज़ॉल्यूशन विफल हो जाता है क्योंकि ऐसा लगता है कि होस्टनाम r @ http- है gateway.domain.org। "R @" नहीं होना चाहिए।
फिल्लुमिनाती

2
मैंने 40% का उपयोग करने की कोशिश की और यह काम किया (विंडोज पर), क्या आप सुनिश्चित हैं?
Thegreendroid

वास्तव में, यह विंडोज और लिनक्स (उबंटू) दोनों पर काम करता है।
thegreendroid

डुप्लिकेट stackoverflow.com/questions/6172719/…
rofrol

जवाबों:


29

आपको प्रतिशत-एनकोड करना होगा | विशेष वर्णों को एनकोड करें। इसके बजाय उदाहरण:

http://foo:B@r@http-gateway.domain.org:80

आप इसे लिखते हैं:

http://foo:B%40r@http-gateway.domain.org:80

तो के @साथ बदल दिया जाता है %40


2
एन्कोडिंग वास्तव में इस समस्या (और कई अन्य) के आसपास आने का तरीका है।
HTDutchy

मैंने पाया कि मुझे कुछ पात्रों को
दोहराए जाने की आवश्यकता है

1
मैं बस encodeURIComponent()इस उद्देश्य के लिए जावास्क्रिप्ट का उपयोग करने का सुझाव देता हूं । आप आसानी से अपने ब्राउज़र का उपयोग कर सकते हैं DeveloperTools -> Console
मीर-इस्माइली

2

हेक्साडेसिमल संकेतन में विशेष चरित्र के% असिसी कोड का उपयोग किसी विशेष वर्ण के लिए करें। मान लीजिए मेरा पासवर्ड AB @ 12 # है और फिर पासवर्ड को इस प्रकार सेट किया जाना चाहिए

git config --global http.proxy *http://usernamne:**AB%4012%23%26**@myipadress:portnumber*

किसी भी संख्या के हेक्साडेसिमल एएससीआई कोड को जानने के लिए एएससीआई तालिका देखें।


1

किसी विशेष वर्ण के लिए, उपयोगकर्ता नाम या पासवर्ड में, हम हमेशा इसकी जगह UTF-8 एन्कोडेड स्ट्रिंग्स का उपयोग कर सकते हैं। उदाहरण के लिए: ! % 21 के साथ प्रतिस्थापित किया जा सकता है

तो कमांड होगा, अगर पासवर्ड एबीसी है! "

npm विन्यास सेट प्रॉक्सी http: // उपयोगकर्ता: abc%21@proxy.world.com: 8080 /

npm कॉन्फ़िगर सेट करें https -xy http: // उपयोगकर्ता: abc%21@proxy.world.com: 8080 /


-1

SO पर इस उत्तर के आधार पर , क्या आप @ प्रतीक से बचने के लिए ^ का उपयोग कर सकते हैं?


दोनों के जवाब में, सेट सफल है, यह पर्यावरण चर का उपयोग करने वाला उपकरण है: set http_proxy=http://foo:B^@r@http-gateway.domain.org:80 jruby -S gem install rakeERROR: मणि निष्पादित करते समय ... (URI :: InvalidURIError) स्कीम रजिस्ट्री भाग को स्वीकार नहीं करती है: foo: B @ r @ http- Gateway.domain.org:80 (या खराब होस्टनाम?)
pyropenguin

यह एक लिनक्स आधारित प्रश्न है, न कि विंडोज आधारित प्रश्न, जिसका उपयोग ^ मेरे लिए काम नहीं करता है। wget: unable to resolve host address प्रॉक्सी पर्यावरण चर सेट करने के बाद भी मुझे tf4ce @ server.company.com'` मिलता है ।
फिल्लुमिनाती

2
वास्तव में यह एक विंडोज आधारित प्रश्न है ... मैं व्यक्तिगत रूप से पाइरोपेंगिन जानता हूं।
माइक कॉर्नेल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.