ለSOCKS5 የአስተናጋጅ ስም መፍቻ libcurl መያዣ ማዋቀር
CURLPROXY_SOCKS5_HOSTNAMEን በማስተላለፊያ መያዣው ላይ ተጠቅመው መዳረሻውን በፕሮክሲው በኩል ይፍቱ።
በመተግበሪያ አሁን ባለው የlibcurl ማስጀመሪያ እና የeasy-handle የሕይወት ዑደት ውስጥ፦
curl_easy_setopt(handle, CURLOPT_URL, "https://example.com/");
curl_easy_setopt(handle, CURLOPT_PROXY, "127.0.0.1:1080");
curl_easy_setopt(handle, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5_HOSTNAME);
curl_easy_setopt(handle, CURLOPT_NOPROXY, "");
curl_easy_setopt(handle, CURLOPT_CONNECTTIMEOUT, 5L);
curl_easy_setopt(handle, CURLOPT_TIMEOUT, 15L);CURLPROXY_SOCKS5_HOSTNAME የመዳረሻውን የአስተናጋጅ ስም በSOCKS መንገድ ይልካል. CURLPROXY_SOCKS5 በምትኩ በደንበኛው ላይ ይፈታዋል፣ ይህም የተለየ የአውታረ መረብ የDNS እይታን ሊጠቀም ይችላል። libcurl የሚጠቀም የC++ HTTP ደንበኛ ይህን መንገድ ለመምረጥ ብቻ የራሱን የSOCKS እጅ መጨበጥ አያስፈልገውም። ለተፈቀደ ይፋዊ መጨረሻ፣ የSOCKS5 ፕሮክሲ ዝርዝር የአስተናጋጅ እና የወደብ እጩዎችን ያቀርባል ምሳሌውን የloopback አድማጭ ለመተካት።
ባዶው CURLOPT_NOPROXY እሴት የፕሮክሲ ሙከራውን ሆን ተብሎ ያደርገዋል። በመደበኛ የመተግበሪያ ፖሊሲ ሲያስተካክሉት የታሰቡትን ማለፊያዎች ይጠብቁ። እነዚህ አማራጮች ይህን መያዣ ብቻ ይመለከታሉ፤ ሌሎች በሂደቱ ውስጥ ያሉ ቤተ-መጻሕፍት እና ሶኬቶች አይወርሷቸውም።
የአማራጭ ማስተካከያ እና የማስተላለፍ መመለሻ እሴቶችን በመተግበሪያው የስህተት አያያዝ በኩል ያረጋግጡ። SOCKSን ማድረስ ወይም መደራደር ከማንኛውም የHTTP ምላሽ በፊት ሊከሽፍ ይችላል፣ ስለዚህ የድረ-ገጽ ሁኔታ ኮድ አይሰጥም።
የሚያስፈልጉ የፕሮክሲ ምስክሮች ከድረ-ገጹ መግቢያ ለየብቻ የተደገፉትን የፕሮክሲ ማረጋገጫ ቅንብሮች እና ምስጢር ዘዴ ይጠቀማሉ። የTLS ማረጋገጫን ነቅቶ ይያዙ፦ በSOCKS በኩል ግንኙነት መክፈት የHTTPS አገልግሎቱን ማንነት አያረጋግጥም።