Proksi transpordi tehase kinnitamine BigQuery Java REST-kliendi külge
Kasutage HttpTransportOptions olemasoleval projekti ja mandaatide konfiguratsioonil, eraldi transpordi seadistusega, kui mandaadid ise teevad tokenipäringuid.
import java.net.InetSocketAddress;
import java.net.Proxy;
import com.google.api.client.http.javanet.NetHttpTransport;
import com.google.cloud.http.HttpTransportOptions;
import com.google.cloud.bigquery.BigQuery;
import com.google.cloud.bigquery.BigQueryOptions;
var proxy = new Proxy(Proxy.Type.HTTP,
new InetSocketAddress("proxy.example", 8080));
var httpOptions = HttpTransportOptions.newBuilder()
.setHttpTransportFactory(() ->
new NetHttpTransport.Builder().setProxy(proxy).build())
.build();
BigQuery bigQuery = BigQueryOptions.newBuilder()
.setProjectId(projectId)
.setCredentials(credentials)
.setTransportOptions(httpOptions)
.build()
.getService();Kasutage seda bigQuery eksemplari REST-toimingute jaoks. projectId ja credentials pärinevad rakenduse olemasolevast konfiguratsioonist.
Tehas loob HTTP-transpordi, mis jõuab BigQuery API-ni vahendaja kaudu. API lõpp-punkt jääb sihtkohaks; selle asendamine proksi aadressiga nõuab teist teenust. Lubatud avaliku proksi marsruudi jaoks BigQuery juurde pakub HTTP-prokside loend kandidaate InetSocketAddress väljadele.
Mandaatide hankimisel või uuendamisel võib olla oma HTTP-transport, seega seadistage see toetatud sisend, kui selle päringud vajavad proksit. Need REST-valikud ei seadista ka sõltumatut gRPC-kanalit.
Süsteemi tuvastamiseks on java.net.useSystemProxies platvormipõhise käitumisega ega taga, et Dockeri HTTP_PROXY väärtusest saab selle kliendi marsruut. Ülalolev selgesõnaline tehas teeb valitud REST-transpordi juba loomise ajal nähtavaks.