在Java中使用基本访问身份验证的HTTP或HTTPS请求

在Java中使用基本访问身份验证的HTTP或HTTPS请求,java,android,http,authentication,https,Java,Android,Http,Authentication,Https,我负责一个Android应用程序,它可以监控来自各种IDS和网络监控系统的测试结果。为此,我们使用了一个非常基本的公司范围的API,它没有受到任何保护。在上周的更新中,负责API的团队决定实现基本访问认证。由于有多个服务器运行此API,而不是所有服务器都使用HTTPS,因此我们保持客户端代码协议不可知。所讨论的代码如下所示: private String url; public String obtainResource() throws IOException { URL u;

我负责一个Android应用程序,它可以监控来自各种IDS和网络监控系统的测试结果。为此,我们使用了一个非常基本的公司范围的API,它没有受到任何保护。在上周的更新中,负责API的团队决定实现基本访问认证。由于有多个服务器运行此API,而不是所有服务器都使用HTTPS,因此我们保持客户端代码协议不可知。所讨论的代码如下所示:

private String url;


public String obtainResource() throws IOException {
    URL u;
    try {
        u = new URL(url);
    } catch (MalformedURLException e) {
        android.util.Log.e("obtainResource", e.getMessage());
        //code for error message on device
        return null;
    }
    BufferedReader reader;
    try {
        reader = new BufferedReader(new InputStreamReader(u.openStream()));
    } catch (IOException e) {
        android.util.Log.e("obtainResource", e.getMessage());
        //code for error message on device
        return null;
    }

    String line;
    String ret = "";
    while ((line = reader.readLine()) != null) {
        if (ret != "") {
            ret += "\n";
        }
        ret += line;
    }

    return ret;

}
现在我们需要为HTTP和HTTPS实现基本的访问身份验证。是否可以在不检查协议的URL字符串本身的情况下执行此操作,从而保持协议不可知