Java verstrekt super eenvoudig, nog verborgen van duidelijke mening, manier om basisauthentificatie van HttpURLConnection/URLConnection te doen.

Alvorens een verbinding te maken de volgende lijnen van code toevoegen:


definitieve login van het Koord = " ;
het definitieve wachtwoord van het Koord = " ;

Authenticator.setDefault (nieuwe Authenticator () {
    beschermde getPasswordAuthentication PasswordAuthentication () {
        terugkeer nieuwe PasswordAuthentication (login, password.toCharArray ());
    }
});

Dit plaatst uw gebrek Authenticator dat wordt geroepen wanneer de authentificatie voor om het even welke URLConnection wordt vereist. Opgelost probleem.

Nota: def. wordt vereist voor de binnenklasse om tot de variabele toegang te hebben.

Authenticator is beschikbaar aangezien JDK 1.2 en toch zeer weinig informatie daar over het op het Web zijn. Bijna adviseert iedereen gebruikend een klasse van het pakket van de Zon (sun.misc.BASE64Encoder ()) en doet manueel het coderen. Niets van dit wordt hierboven vereist in de eenvoudige oplossing.

Java URLConnection API zou een setAuthenticator (Authenticator) methode moeten hebben om het gemakkelijker te maken om deze klasse in multi-threaded context te gebruiken waar de authentificatie wordt vereist.