Во-первых, я рекомендую вам не отправлять конфиденциальные данные, такие как имя пользователя и пароль в URL.Вы должны отправить его в теле запроса.
Простой способ сделать это - кодировать Base64 на внешнем интерфейсе в javascript и декодировать на внутреннем интерфейсе в java.
FrontEnd : весь хромверсия, Firefox 1.0 и выше, Internet Explorer 10 и выше
var string = 'pa+ssw1&rd%';
// Encode the String
var encodedString = btoa(string);
console.log(encodedString); // Outputs: cGErc3N3MSZyZCU=
// Decode the String
var decodedString = atob(encodedString);
console.log(decodedString); // Outputs: pa+ssw1&rd%
Бэкэнд:
Для Java 8 и выше:
import java.util.Base64;
byte[] decoded = Base64.getDecoder().decode(password);
decodedpassword = new String(decoded, "utf-8");
Для
import org.apache.commons.codec.binary.Base64;
import org.apache.commons.codec.binary.StringUtils;
public String decode1(String s) {
return StringUtils.newStringUtf8(Base64.decodeBase64(s));
}
public String decode2(String s) {
return new String(Base64.decodeBase64(s), "utf-8");
}
Репозиторий Maven / sbt: commons-codec, commons-codec, 1.8.