@ во лозинка за Java прокси
Предадете ја суровата лозинка на PasswordAuthentication и применете URL-кодирање само при изградба на вистински прокси URL.
java.net.PasswordAuthentication прима корисничко име и низа знаци за лозинката. Предадете ги оригиналните знаци на лозинката:
var credential = new java.net.PasswordAuthentication(
"proxy-user", "p@ssword".toCharArray());
Вредноста е илустративна лозинка. Во кодот на апликацијата земете ги вистинските знаци од предвидениот извор на акредитиви.
Знакот @ внатре во оваа лозинка е податок, бидејќи лозинката веќе има свој аргумент. Неговото претворање во p%40ssword пред конструкторот дава друга лозинка.
Прокси URL има друг приказ на акредитивите. Во URL како http://proxy-user:p%[email protected]:8080 кодираниот @ припаѓа на корисничките информации, додека подоцнежниот @ ги одделува тие информации од домаќинот. Декодирајте и кодирајте според интерфејсот што ја троши вредноста.
Цитирањето во shell, escape-от на Java стринг литерали и процентуалното кодирање на URL исто така решаваат различни проблеми при парсирање. Определете кој слој го чита влезот наместо постојано да ги кодирате акредитивите додека не се промени однесувањето на барањето.