Saita proxy na turawa a OkHttp, sannan ka ba Retrofit wannan abokin ciniki ɗin:

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();

Wannan ɓangaren yana gina layin jigilar bayanai da misalin Retrofit. Kafin build, ƙara wa wannan magini masana'antun mai canzawa da adaftar kira da aikace-aikacen ke buƙata, sannan ƙirƙiri mu'amalar hidimar daga wannan misalin.

Ka riƙe baseUrl yana nuna ainihin hidimar API. Idan ka sanya URL ɗin proxy a wurin, kana canza makomar HTTP; wannan ba ya saita tattaunawa da proxy. URL tushen kuma yana kiyaye buƙatar Retrofit na slash na ƙarshe. Gwajin API na jama'a da aka halatta ba tare da tabbatar da proxy ba zai iya ɗaukar adireshin HTTP daga jerin proxy na HTTP don abin Proxy na daban.

Proxy bayyananne na OkHttp yana da fifiko bisa ProxySelector ɗinsa. Yi amfani da wannan lokacin da abokin ciniki ya kamata ya sami matsakaici na dindindin. Aikace-aikacen da ke buƙatar turawa dangane da makoma yakamata su tsara wannan manufar ta hanyar zaɓin da aka goyi bayan.

Idan an riga an ƙirƙiri mu'amalar hidimar daga wani misalin Retrofit, gina wannan sabon misalin ba ya motsa buƙatun tsohuwar mu'amalar. Ka riƙe abokin ciniki da aka saita, misalin Retrofit da abin hidima a kan hanyar ginawa ɗaya.

Don proxy mai tabbatarwa, OkHttp yana bayyana proxyAuthenticator dabam da mai tabbatar da makomarsa. Saita shi a kan maginin OkHttp idan an buƙata, sannan ka ba Retrofit cikakken abokin ciniki. Don proxy da ke amfani da tabbatarwar Basic, yi amfani da iyakantaccen sarrafa sake gwada proxyAuthenticator.

Labarai masu alaƙa