Apache HttpClient 5.5 တွင် ချိတ်ဆက်မှု မန်နေဂျာ၏ ဆော့ကက်ဆက်တင်များ၌ SOCKS ပြင်ဆင်မှုလမ်းကြောင်း ပါဝင်သည်။ ၎င်း၏ ထိန်းသိမ်းထားသော နမူနာသည် setSocksProxyAddress ကို အသုံးပြုသည်:

InetSocketAddress socks =
    new InetSocketAddress("proxy.example.net", 1080);

PoolingHttpClientConnectionManager manager =
    PoolingHttpClientConnectionManagerBuilder.create()
        .setDefaultSocketConfig(
            SocketConfig.custom()
                .setSocksProxyAddress(socks)
                .build()
        )
        .build();

CloseableHttpClient client = HttpClients.custom()
    .setConnectionManager(manager)
    .build();

ဤအပိုင်းသည် HttpClient 5 ၏ org.apache.hc ပက်ကေ့ချ်များနှင့် HttpCore ၏ SocketConfig ကို အသုံးပြုသည်။ ဤကလိုင်းယင့်ဖြင့် ပြုလုပ်သော တောင်းဆိုချက်များသည် အထက်တွင် ပြင်ဆင်ထားသော pool ကို အသုံးပြုသည်။ အပလီကေးရှင်း၏ ပိုင်ဆိုင်မှုအတိုင်းအတာ ကုန်ဆုံးသောအခါ ကလိုင်းယင့်ကို ပိတ်ပါ။

ဝဘ်ဆိုက်၏ အမှန်တကယ် URL ကို ပုံမှန်အတိုင်း တောင်းဆိုချက်ပေါ်တွင် ထားပါ။ ပရောက်စီ အထောက်အထားစစ်ဆေးမှုမပါဘဲ ခွင့်ပြုထားသော အများသူငှာ ဆိုက်တောင်းဆိုချက်များအတွက် SOCKS ပရောက်စီစာရင်း သည် ကိုယ်စားလှယ်လောင်း လိပ်စာများကို ပေးသည်။ အမှန်တကယ် လည်ပတ်မှုပတ်ဝန်းကျင်က ပံ့ပိုးသော SOCKS ဗားရှင်းကို ရွေးပါ။ SOCKS လိပ်စာသည် ၎င်းထံရောက်ရန် အသုံးပြုသော သယ်ယူပို့ဆောင်ရေးကို ပြင်ဆင်သည်။ ၎င်းသည် HttpHost အဖြစ် ပေးအပ်သော HTTP ရှေ့သို့ ပရောက်စီလမ်းကြောင်း မဟုတ်ပါ။

၎င်းတို့သည် ဤမန်နေဂျာအတွက် မူလဆော့ကက်ဆက်တင်များ ဖြစ်သည်။ လမ်းကြောင်းတစ်ခုချင်း SocketConfig ဖြေရှင်းကိရိယာကို အသုံးပြုသော အပလီကေးရှင်းသည် လိုချင်သော SOCKS ဆက်တင်ကို ထိုမူဝါဒမှတစ်ဆင့် အသုံးချသင့်သည်။ နမူနာသည် ချိတ်ဆက်မှု မန်နေဂျာ၏ ပုံမှန် ဦးတည်ရာ DNS မူဝါဒကို ထိန်းသိမ်းထားသည်။ အဝေးမှ အမည်ဖြေရှင်းမှုအတွက် သီးခြား အတည်ပြုထားသော ပြင်ဆင်မှု လိုအပ်သည်။

ဆက်စပ်ဆောင်းပါးများ