java.net.PasswordAuthentication przyjmuje nazwę użytkownika i tablicę znaków hasła. Przekaż oryginalne znaki hasła:

var credential = new java.net.PasswordAuthentication(
    "proxy-user", "p@ssword".toCharArray());

Wartość jest przykładowym hasłem. W kodzie aplikacji pobierz rzeczywiste znaki z zamierzonego źródła poświadczeń.

Znak @ wewnątrz tego hasła jest daną, ponieważ hasło ma już własny argument. Przekształcenie go w p%40ssword przed konstruktorem przekazuje inne hasło.

Adres URL proxy ma inną reprezentację poświadczeń. W adresie takim jak http://proxy-user:p%[email protected]:8080 zakodowany @ należy do informacji o użytkowniku, a późniejszy @ oddziela te informacje od hosta. Dekoduj i koduj zgodnie z interfejsem, który faktycznie zużywa wartość.

Cytowanie w powłoce, escapowanie literałów łańcuchowych Java i procentowe kodowanie URL również rozwiązują różne problemy analizy składniowej. Ustal, która warstwa czyta dane wejściowe, zamiast wielokrotnie kodować poświadczenia, aż zmieni się zachowanie żądania.

Powiązane artykuły