JDK 25 HttpClient, ProxySelector හි SOCKS මාර්ග භාවිත නොකරයි
ProxySelector ආපසු ලබා දෙන වර්ගය මත පමණක් රඳා නොසිට, SOCKS සැබවින්ම ආධාර කරන Java HTTP ප්රවාහනයක් තෝරන්න.
Java ප්රොක්සි වස්තුවක් මාර්ගයක් විස්තර කරයි. කුමන ආකාරයේ මාර්ග භාවිත කළ හැකිද යන්න තවමත් ජාල සේවාලාභියා තීරණය කරයි. ලබා ගත හැකි අන්ත ලක්ෂ්යය SOCKS කථා කරන අතර යෙදුම java.net.http.HttpClient භාවිත කරන විට මෙය වැදගත් වේ.
මෙහි පරීක්ෂා කරන JDK 25 ක්රියාත්මක කිරීමේදී, HTTP සේවාලාභියාගේ ඉල්ලීම් කේතය තේරීම්කරුගෙන් HTTP අපේක්ෂකයෙකු පිළිගනී. SOCKS අපේක්ෂකයෙකු එය SOCKS සාකච්ඡා සිදු කිරීමට යොදවන්නේ නැත; ක්රියාත්මක කිරීම ප්රොක්සියක් නොමැතිව ඉදිරියට යා හැකිය. එබැවින් සාර්ථක ප්රතිචාරයක් යනු අභිරුචි තේරීම්කරුවෙකුගේ SOCKS පිවිසුම භාවිත කළ බවට ප්රමාණවත් සාක්ෂියක් නොවේ.
පළමුව ප්රවාහනය තෝරන්න
URLConnection මත පදනම් වූ පවතින යෙදුමක් සඳහා, සම්බන්ධතාවය විවෘත කරන විට ප්රොටෝකෝල හසුරුවන්නාට ආධාරක පැහැදිලි ප්රොක්සියක් ලබා දිය හැකිය:
Proxy route = new Proxy(Proxy.Type.SOCKS,
new InetSocketAddress("proxy.example", 1080));
URLConnection connection = URI.create("https://service.example/")
.toURL().openConnection(route);
connection.setConnectTimeout(5000);
connection.setReadTimeout(15000);
අවසර ලත් පොදු ඉලක්ක පරීක්ෂණ සඳහා, ඔබේ සේවාවෙන් හෝ SOCKS ප්රොක්සි ලැයිස්තුවෙන් ගැලපෙන SOCKS අන්ත ලක්ෂ්යයක් භාවිත කරන්න. මෙය වෙනත් සේවාලාභී API එකකි, HttpClient.Builder.proxy සඳහා විකල්ප අක්ෂර වින්යාසයක් නොවේ. HTTPS අපේක්ෂිත වෙබ් අඩවිය හඳුනා ගැනීම දිගටම කරගෙන යාමට ගමනාන්ත URL රඳවා ගන්න.
java.net.http රඳවා ගත යුතු යෙදුමකට ඒ වෙනුවට ගැළපෙන HTTP ප්රොක්සි අන්ත ලක්ෂ්යයක් භාවිත කළ හැකිය, ඉදිරි SOCKS සම්බන්ධතාවය හසුරුවන අනුමත අනුවර්තකයක් ඇතුළුව. එය සැබෑ සංරචකයක් සහ තවත් ප්රවේශ මායිමක් එකතු කරයි; 8080 වර්තමානය 1080 බවට වෙනස් කිරීම එම පරිවර්තනය ලබා නොදේ.
තේරීම සහ භාර ගැනීම දෘශ්යමානව තබන්න
තේරීම්කරුගේ ප්රතිඵලය සහ සේවාලාභියා සැබවින්ම විවෘත කරන සම්බන්ධතාවය යන දෙකම සටහන් කරන්න. පළමුවැන්න ප්රතිපත්ති ප්රතිදානය විස්තර කරයි; දෙවැන්න ක්රියාත්මක කිරීම එය භාර ගත්තේද යන්න තීරණය කරයි.
නිගමන භාවිත වන ධාවන පරිසරයට සහ ප්රවාහනයට බැඳ දමන්න. එක් සොකට් ක්රියාත්මක කිරීමක් භාවිත කරන JVM SOCKS ගුණාංග යනු සෑම HTTP පුස්තකාලයක්ම ඒවා අසන බවට පොරොන්දුවක් නොවේ. මාර්ගය අනිවාර්ය වූ විට, පෙනෙන පරිදි සාර්ථක සෘජු ඉල්ලීමක් පිළිගැනීමට පෙර ආධාරක නොමැති ප්රොක්සි වර්ගයක් හඳුනා ගත යුතුය.