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 ପୁନଃଚେଷ୍ଟା ପରିଚାଳନା ବ୍ୟବହାର କରନ୍ତୁ।

ସମ୍ପର୍କିତ ପ୍ରବନ୍ଧ