Konfigurálja mindkét transzport bemenetet, amikor a Firebase HTTP hívásainak és a hitelesítő adatok frissítésének ugyanazt a proxyt kell használnia. Az HTTP proxy listából választott nyilvános HTTP végpont ugyanezt a két átadást igényli:

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

A két fontos átadás a fromStream(serviceAccountStream, () -> transport) és a setHttpTransport(transport). Az első biztosítja a HTTP transzportot a hozzáférési tokenek megszerzéséhez; a második a Firebase alkalmazás HTTP transzportját adja. Ha csak az egyiket állítja be, a másik az alapértelmezett útvonalán maradhat.

A serviceAccountStream az alkalmazás megbízható szolgáltatásfiók-hitelesítő adatfolyama. Tartsa meg az alkalmazást a terheléséhez, és a szokásos Firebase életciklussal engedje el. A proxy beállítás érintetlenül hagyja a cél hosztnevét a TLS-ellenőrzéshez; nem igényel sem SDK-osztályok cseréjét, sem mindent megbízó SSL gyárat.

A hatókör itt a bemutatott HTTP interfészek. A Realtime Database WebSocketjét vagy más szolgáltatástranszportot használó terhelésnek külön kell ellenőriznie az adott transzport útvonal-támogatását.

Kapcsolódó cikkek