ਜਦੋਂ Firebase ਦੀਆਂ HTTP ਕਾਲਾਂ ਅਤੇ ਕ੍ਰੈਡੈਂਸ਼ੀਅਲ ਰਿਫ੍ਰੈਸ਼ ਨੂੰ ਇੱਕੋ ਪ੍ਰੌਕਸੀ ਵਰਤਣੀ ਹੋਵੇ ਤਾਂ ਦੋਵੇਂ ਟ੍ਰਾਂਸਪੋਰਟ ਇਨਪੁੱਟ ਕਨਫਿਗਰ ਕਰੋ। HTTP ਪ੍ਰੌਕਸੀ ਸੂਚੀ ਵਿੱਚੋਂ ਚੁਣੇ ਗਏ ਜਨਤਕ HTTP ਐਂਡਪੁਆਇੰਟ ਨੂੰ ਵੀ ਉਹੀ ਦੋ ਹੈਂਡਓਫ ਚਾਹੀਦੇ ਹਨ:

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

ਦੋ ਮਹੱਤਵਪੂਰਨ ਹੈਂਡਓਫ fromStream(serviceAccountStream, () -> transport) ਅਤੇ setHttpTransport(transport) ਹਨ। ਪਹਿਲਾ ਐਕਸੈਸ ਟੋਕਨ ਲੈਣ ਲਈ HTTP ਟ੍ਰਾਂਸਪੋਰਟ ਦਿੰਦਾ ਹੈ; ਦੂਜਾ Firebase ਐਪ ਦਾ HTTP ਟ੍ਰਾਂਸਪੋਰਟ ਦਿੰਦਾ ਹੈ। ਸਿਰਫ਼ ਇੱਕ ਸੈੱਟ ਕਰਨ ਨਾਲ ਦੂਜਾ ਆਪਣੇ ਡਿਫ਼ਾਲਟ ਰਾਹ ਉੱਤੇ ਰਹਿ ਸਕਦਾ ਹੈ।

serviceAccountStream ਐਪ ਦਾ ਭਰੋਸੇਯੋਗ ਸੇਵਾ-ਖਾਤਾ ਕ੍ਰੈਡੈਂਸ਼ੀਅਲ ਸਟ੍ਰੀਮ ਹੈ। ਐਪ ਨੂੰ ਇਸ ਦੇ ਕੰਮ ਲਈ ਰੱਖੋ ਅਤੇ ਆਮ Firebase ਜੀਵਨ-ਚੱਕਰ ਰਾਹੀਂ ਛੱਡੋ। ਪ੍ਰੌਕਸੀ ਸੈਟਿੰਗ TLS ਪੁਸ਼ਟੀ ਲਈ ਟਾਰਗੇਟ ਹੋਸਟਨੇਮ ਨੂੰ ਅਛੂਤਾ ਰੱਖਦੀ ਹੈ; ਇਸ ਨੂੰ ਨਾ SDK ਵਰਗ ਬਦਲਣ ਦੀ ਲੋੜ ਹੈ ਅਤੇ ਨਾ ਹੀ ਹਰ ਚੀਜ਼ 'ਤੇ ਭਰੋਸਾ ਕਰਨ ਵਾਲੀ SSL ਫੈਕਟਰੀ ਦੀ।

ਇੱਥੇ ਦਾਇਰਾ ਦਿਖਾਏ ਗਏ HTTP ਇੰਟਰਫ਼ੇਸਾਂ ਦਾ ਹੈ। Realtime Database WebSocket ਜਾਂ ਕਿਸੇ ਹੋਰ ਸੇਵਾ ਟ੍ਰਾਂਸਪੋਰਟ ਦੀ ਵਰਤੋਂ ਕਰਨ ਵਾਲੇ ਵਰਕਲੋਡ ਲਈ ਉਸ ਟ੍ਰਾਂਸਪੋਰਟ ਦੀ ਰਾਊਟਿੰਗ ਸਹਾਇਤਾ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਜਾਂਚਣੀ ਪਵੇਗੀ।

ਸੰਬੰਧਿਤ ਲੇਖ