Lorsque j'envoie une chaîne encodée en Base64 comme en-tête à l'aide de Http, j'obtiens une réponse d'erreur comme
Unexpected char 0x0a at 28 in header value: I99Uy+HjG5PpEhmi8vZgm0W7KDQ=
Utilisation:
String encodedHeader = Base64.encodeToString(value.getBytes(), Base64.DEFAULT); header.put("auth", encodedHeader);
0x0a
Est un caractère de nouvelle ligne qui est interdit dans un en-tête. La solution serait de s'assurer que ces caractères sont supprimés avant d'envoyer la valeur codée en tant qu'en-tête.
Base64.encodeToString(credentials.getBytes(), Base64.NO_WRAP);
cela évite le wrapping avec un caractère de nouvelle ligne spécifique à la plate-forme.