Java HttpsURLConnection验证器错误

Java HttpsURLConnection验证器错误,java,android,authentication,Java,Android,Authentication,我的身份验证程序Android方法有问题 此方法工作并返回200代码(HTTP\u OK): 但为了成为一名普通用户,我发送了以下用户值: urlConnection = new URL(params[0]); user = params[1]; pass = params[2]; 将身份验证更改为: return new PasswordAuthentication(user, pass.toCharArray()) 进行了一项测试: 用户/通过:“测试” 我想接收401代码(HTTP\u

我的身份验证程序Android方法有问题

此方法工作并返回200代码(HTTP\u OK):

但为了成为一名普通用户,我发送了以下用户值:

urlConnection = new URL(params[0]);
user = params[1];
pass = params[2];
将身份验证更改为:

return new PasswordAuthentication(user, pass.toCharArray())
进行了一项测试: 用户/通过:“测试”

我想接收401代码(HTTP\u未经授权

当我调试并单击f7/f8时,有时我可以看到401响应代码,但我无法返回它,因为他似乎进入了一个循环:

httpUrlConnection.getResponseCode();
以下是我的代码片段:

.....    

    httpUrlConnection.setConnectTimeout(2000);
    httpUrlConnection.connect();
    statusCode = httpUrlConnection.getResponseCode(); //debug stop here
    httpUrlConnection.disconnect(); 
} catch (IOException e) {
    e.printStackTrace();
}
return statusCode;

有什么提示吗?

问题出在服务器上

验证方法是“
Basic

将其更改为“
Digest
”。服务器仅尝试进行一次身份验证,在可以登录之前不会进行递归验证

编辑

但是要注意,因为

HttpUrlConnection
不支持如上所述的摘要

.....    

    httpUrlConnection.setConnectTimeout(2000);
    httpUrlConnection.connect();
    statusCode = httpUrlConnection.getResponseCode(); //debug stop here
    httpUrlConnection.disconnect(); 
} catch (IOException e) {
    e.printStackTrace();
}
return statusCode;