Augšupielādei, kas tiek atkārtota pēc starpniekservera izaicinājuma, atkal nepieciešams tās saturs. Jersey 2 Apache savienotājam izvēlieties buferētas entītijas apstrādi konfigurācijā, ar kuru tiek būvēts šis klients:

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

Veiciet augšupielādi ar iegūto klientu. Šie tipi nāk no pakotnēm Jersey client un Apache-connector; neizmantotas konfigurācijas iestatīšana pieprasījumu neietekmētu.

Savienotājs iesaiņo buferētu entītiju Apache BufferedHttpEntity. Tās nebuferētā straumēšanas entītija nav atkārtojama. Buferēšana nodrošina autentifikācijas plūsmu ar baitiem, ko tā var nosūtīt vēlreiz, nevis atkārtoti lasīt jau izlietotu producentu.

Tas negarantē, ka autentifikācija beidzas pēc viena 407. Dažas shēmas pamatoti prasa vairākas apmaiņas, tāpēc pārbaudiet visu sarunu, pirms uzskatāt vēl vienu izaicinājumu par zaudētu stāvokli.

Turiet satura izmēru atmiņas budžeta robežās. Lielai straumēšanas augšupielādei nepieciešama šai slodzei piemērota atkārtošanas stratēģija; buferēšanas ieslēgšana katram pieprasījumam var apmainīt sarunu kļūmi pret atmiņas izsīkumu.

Saistītie raksti