Nastavite oba vhoda transporta, ko morajo klici HTTP Firebase in osveževanje poverilnic uporabljati isti proxy. Javna končna točka HTTP, izbrana s seznama proxyjev HTTP, potrebuje isti par predaj:

var proxy = new java.net.Proxy(
    java.net.Proxy.Type.HTTP,
    new java.net.InetSocketAddress("proxy.example.net", 8080));

var transport =
    new com.google.api.client.http.javanet.NetHttpTransport.Builder()
        .setProxy(proxy)
        .build();

var credentials = com.google.auth.oauth2.GoogleCredentials.fromStream(
    serviceAccountStream, () -> transport);

var options = com.google.firebase.FirebaseOptions.builder()
    .setCredentials(credentials)
    .setHttpTransport(transport)
    .build();

var app = com.google.firebase.FirebaseApp.initializeApp(options);

Dve pomembni predaji sta fromStream(serviceAccountStream, () -> transport) in setHttpTransport(transport). Prva zagotavlja transport HTTP za pridobivanje dostopnih žetonov; druga zagotavlja transport HTTP aplikacije Firebase. Če nastavite samo eno, lahko druga ostane na svoji privzeti poti.

serviceAccountStream je zaupanja vredni tok poverilnic storitvenega računa aplikacije. Aplikacijo obdržite za njeno delovno obremenitev in jo sprostite z običajnim življenjskim ciklom Firebase. Nastavitev proxyja pusti ime ciljnega gostitelja nedotaknjeno za preverjanje TLS; ne zahteva ne zamenjave razredov SDK ne tovarne SSL, ki zaupa vsemu.

Obseg tu so prikazani vmesniki HTTP. Delovna obremenitev, ki uporablja WebSocket Realtime Database ali drug transport storitve, potrebuje ločeno preverjanje podpore za usmerjanje tega transporta.

Sorodni članki