A proxy kihívása után újrapróbált feltöltésnek ismét szüksége van a testére. A Jersey 2 Apache connectorához válassza a pufferelt entitásfeldolgozást abban a konfigurációban, amelyből az a kliens épül:

ClientConfig config = new ClientConfig();
config.connectorProvider(new ApacheConnectorProvider());
config.property(ClientProperties.PROXY_URI,
                "http://proxy.example.net:8080");
config.property(ClientProperties.REQUEST_ENTITY_PROCESSING,
                RequestEntityProcessing.BUFFERED);

A feltöltést a létrejött kliensen keresztül végezze el. Ezek a típusok a Jersey client és az Apache-connector csomagokból származnak; egy nem használt konfiguráció beállítása nem befolyásolná a kérést.

A connector pufferelt entitást csomagol az Apache BufferedHttpEntity osztályába. A nem pufferelt streamelő entitása nem ismételhető. A pufferelés olyan bájtokat ad a hitelesítési folyamatnak, amelyeket újra elküldhet, ahelyett hogy egy már felhasznált producert olvasna újra.

Ez nem garantálja, hogy a hitelesítés egyetlen 407 után véget ér. Egyes sémák jogosan több cserét igényelnek, ezért a teljes egyeztetést vizsgálja meg, mielőtt egy újabb kihívást elveszett állapotnak tekintene.

Tartsa a testméretet a memóriakereten belül. A nagy streamelő feltöltéshez az adott terheléshez illő újrajátszási stratégia kell; a pufferelés minden kérésre való bekapcsolása az egyeztetési hiba helyett memóriakimerülést eredményezhet.

Kapcsolódó cikkek