Use separate library to do base64 encoding in Java

default and jersey2 clients to make it work in both JVM and Android
This commit is contained in:
xhh
2015-11-22 16:27:14 +08:00
parent 81cf57a00b
commit 4f831e032c
7 changed files with 39 additions and 8 deletions

View File

@@ -2,11 +2,12 @@ package {{invokerPackage}}.auth;
import {{invokerPackage}}.Pair;
import com.migcomponents.migbase64.Base64;
import java.util.Map;
import java.util.List;
import java.io.UnsupportedEncodingException;
import javax.xml.bind.DatatypeConverter;
{{>generatedAnnotation}}
public class HttpBasicAuth implements Authentication {
@@ -36,7 +37,7 @@ public class HttpBasicAuth implements Authentication {
}
String str = (username == null ? "" : username) + ":" + (password == null ? "" : password);
try {
headerParams.put("Authorization", "Basic " + DatatypeConverter.printBase64Binary(str.getBytes("UTF-8")));
headerParams.put("Authorization", "Basic " + Base64.encodeToString(str.getBytes("UTF-8"), false));
} catch (UnsupportedEncodingException e) {
throw new RuntimeException(e);
}