Uzu unu prokuran transporton por Firebase Admin Java kaj ĝisdatigo de ĵetonoj
Transdonu la transportan fabrikon al GoogleCredentials kaj la transporton al FirebaseOptions, por ke ambaŭ HTTP-vojoj havu la prokuron.
Agordu ambaŭ transportajn enigojn kiam la HTTP-vokoj de Firebase kaj la ĝisdatigo de akreditaĵoj devas uzi la saman prokuron. Publika HTTP-finpunkto elektita el la listo de HTTP-prokuroj bezonas tiun saman paron da transdonoj:
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);La du gravaj transdonoj estas fromStream(serviceAccountStream, () -> transport) kaj setHttpTransport(transport). La unua liveras la HTTP-transporton por akiri alirajn ĵetonojn; la dua liveras la HTTP-transporton de la aplikaĵo Firebase. Se oni agordas nur unu, la alia povas resti sur sia implicita vojo.
serviceAccountStream estas la fidata akreditaĵo-fluo de la servo-konto de la aplikaĵo. Konservu la aplikaĵon por ĝia laborŝarĝo kaj liberigu ĝin per la normala vivociklo de Firebase. La prokura agordo lasas la celan gastigantnomon sendifekta por TLS-kontrolo; ĝi postulas nek anstataŭigon de SDK-klasoj nek SSL-fabrikon kiu fidas ĉion.
La amplekso ĉi tie estas la montritaj HTTP-interfacoj. Laborŝarĝo uzanta WebSocket de Realtime Database aŭ alian servan transporton bezonas apartan kontrolon de la vojiga subteno de tiu transporto.