我正在尝试从远程服务器获取 xml 文件。服务器询问用户名和密码。
我的代码在 Android 4.x 上运行良好,但在 Android 2.xi 上出现错误 400。
400 错误请求
您的浏览器发送了此服务器无法理解的请求。
这是我的代码:
URL url = new URL("http://username:password@xx.xx.xx.xx:80/pathToXML/file.xml");
URLConnection uc = url.openConnection();
String val = (new StringBuffer("username").append(":").append("password")).toString();
byte[] base = val.getBytes();
String authorizationString = "Basic " + new String(Base64.encode(base, Base64.DEFAULT));
uc.setRequestProperty("Authorization", authorizationString);
uc.connect();
InputStream ins = uc.getInputStream(); // it fails on this line
我尝试了很多东西(添加 Content-Length、SetRequestMethod 到 POST、设置 user-Agent)但它不起作用。
如果有人有任何想法,我愿意接受。
非常感谢你的帮助。
干杯