د OkHttpClient له لارې د Retrofit پراکسي تنظیمول
Retrofit ته تنظیم شوی OkHttpClient ورکړئ او د API بنسټیز URL د هدف خدمت پر لور وګرځوئ.
په OkHttp کې د لېږد پراکسي تنظیم کړئ، بیا هغه هماغه کلاینټ Retrofit ته ورکړئ:
import java.net.InetSocketAddress;
import java.net.Proxy;
import okhttp3.OkHttpClient;
import retrofit2.Retrofit;
Proxy proxy = new Proxy(
Proxy.Type.HTTP,
new InetSocketAddress("proxy.example", 8080));
OkHttpClient http = new OkHttpClient.Builder()
.proxy(proxy)
.build();
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("https://api.example/")
.client(http)
.build();
دا ټوټه د لېږد طبقه او د Retrofit نمونه جوړوي. له build مخکې دې بډر ته هغه کنورټر او کال-اډاپټر فابریکې ورزیاتې کړئ چې اپلیکیشن ورته اړتیا لري، بیا له دې نمونې د هغه خدمت انټرفېس جوړ کړئ.
baseUrl دې د اصلي API خدمت پر لور وي. که هلته د پراکسي URL کېږدئ، HTTP هدف بدلېږي؛ دا د پراکسي خبرې اترې نه تنظیموي. بنسټیز URL د Retrofit د پای سلیش شرط هم ساتي. پرته له پراکسي تصدیق څخه اجازه شوې عامه API ازموینه کولی شي د جلا Proxy شي لپاره له HTTP پراکسي لېست څخه HTTP پته واخلي.
په OkHttp کې ښکاره پراکسي د خپل ProxySelector په پرتله لومړیتوب لري. دا هغه وخت وکاروئ چې کلاینټ باید ثابت منځګړی ولري. هغه اپلیکیشنونه چې د هدف پورې تړلې لارښوونه غواړي، هغه تګلاره دې د ملاتړ شوي ټاکونکي له لارې ډیزاین کړي.
که د خدمت انټرفېس لا دمخه له بل Retrofit نمونې جوړ شوی وي، دا نوی نمونه جوړول د زاړه انټرفېس غوښتنې نه ځای په ځای کوي. تنظیم شوی کلاینټ، د Retrofit نمونه او د خدمت شي دې په یوه جوړونې لاره کې وساتل شي.
د تصدیق لرونکي پراکسي لپاره OkHttp د proxyAuthenticator په خپل هدف تصدیق کوونکي بېله ښکاره کوي. کله چې اړتیا وي یې په OkHttp بډر کې تنظیم کړئ، بیا بشپړ کلاینټ Retrofit ته ورکړئ. د Basic تصدیق لرونکي پراکسي لپاره د proxyAuthenticator محدوده بیا هڅه سمبالښت وکاروئ.