काही ॲपना IP:port हवे असते. इतरांना http:// किंवा socks5:// ने सुरू होणारा URL लागतो. ब्राउझर सेटिंगमध्ये पत्ता व पोर्ट सहसा वेगवेगळ्या क्षेत्रांत असतात. त्यामुळे एकच endpoint पत्ता न बदलता अनेक स्वरूपांत दिसू शकतो.

IPv4 नोंद

समजा HTTP proxy यादी उदाहरण म्हणून HTTP proxy 203.0.113.10:8080 देते.

ॲप काय मागतेप्रविष्ट करा
Host किंवा IP203.0.113.10
पोर्ट8080
HTTP proxy URLhttp://203.0.113.10:8080

पोर्ट दोनदा लिहू नका. ॲपमध्ये आधीच पोर्टचे क्षेत्र असल्यास host च्या क्षेत्रात 203.0.113.10:8080 लिहिल्यामुळे ते पूर्ण स्ट्रिंगला hostname समजून resolve करण्याचा प्रयत्न करू शकते. तसेच फक्त IP पत्ता स्पष्टपणे अपेक्षित असलेल्या क्षेत्रात scheme जोडू नका.

Scheme सेवेशी जुळले पाहिजे. पत्ता बदलण्यापूर्वी क्लायंटच्या समर्थनानुसार HTTP किंवा SOCKS5 निवडा. HTTP endpoint च्या आधी socks5:// लिहिल्याने क्लायंट काय पाठवतो ते बदलते; त्या सर्व्हरवर SOCKS5 सुरू होत नाही.

URL मध्ये IPv6 साठी चौकोनी कंस हवेत

IPv6 पत्त्यात आधीच कोलन असतात, म्हणून URL मध्ये पोर्ट जोडण्यापूर्वी पत्ता चौकोनी कंसांत ठेवला जातो:

http://[2001:db8::10]:8080
socks5://[2001:db8::10]:1080

कंसांशिवाय पत्ता व पोर्टची सीमा संदिग्ध असते. स्वतंत्र क्षेत्रे असलेल्या ॲपला सहसा host म्हणून 2001:db8::10 आणि पोर्ट म्हणून 8080 हवे असते; त्या ॲपचे इनपुट स्वरूप पाळा. इथले दोन्ही पत्ते दस्तऐवजांतील उदाहरणे आहेत, चालू proxy नाहीत.

प्रत्येक कोलनवर विभागण्याऐवजी URL पार्स करा

लहान Python स्क्रिप्ट प्रमाणित URL parser वापरून IPv4 आणि कंस असलेले IPv6 URL हाताळू शकते:

from urllib.parse import urlsplit

proxy = urlsplit("http://[2001:db8::10]:8080")
print(proxy.scheme)
print(proxy.hostname)
print(proxy.port)

hostname गुणधर्म कंसांशिवाय पत्ता देतो. मूळ स्ट्रिंग प्रत्येक कोलनवर विभागल्यास हे उदाहरण बिघडेल. प्रत्यक्ष importer मध्ये host नसलेली नोंद, असमर्थित scheme आणि 1–65535 बाहेरील पोर्टही नाकारा. URL पार्स केल्याने त्याचे घटक मिळतात; सेवा अस्तित्वात आहे याचा पुरावा मिळत नाही.

यादीत वापरकर्तानाव आणि संकेतशब्द असल्यास

नेहमीचे URL स्वरूप http://username:password@host:port आहे. ओळखमाहितीतील @, # आणि / यांसारख्या चिन्हांचे योग्य URL encoding आवश्यक आहे. क्लायंट स्वतंत्र ओळखमाहिती क्षेत्रे देत असल्यास स्वतः URL बनवण्यापेक्षा ती वापरणे सहसा सोपे असते.

कोलनने विभागलेली ओळखमाहिती बदलण्यापूर्वी पुरवठादाराचे मूळ स्वरूप तपासा. कोलनने वेगळ्या केलेल्या चार क्षेत्रांचा सार्वत्रिक अर्थ नसतो आणि संकेतशब्दात स्वतःही कोलन असू शकतो. साध्या IP:port ओळींसाठी बनवलेल्या parser ने दुसरे स्वरूप गुपचूप गृहीत धरू नये.

संबंधित लेख