Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java HTTPURLConnetion以命中服务_Java_Httpurlconnection - Fatal编程技术网

Java HTTPURLConnetion以命中服务

Java HTTPURLConnetion以命中服务,java,httpurlconnection,Java,Httpurlconnection,我对HttpURLConnection类的以下代码或行为有点困惑。我有下面的代码,它点击URL(rest服务在.net中)并从中获得响应。当我运行代码时,我在Windows和Unix环境中都得到了响应。我有权访问此URL 当我向无法访问URL的人提供相同的代码时,它会抛出401 Unauthorized错误。但在下面的代码中,我无法传递我的凭据,它如何自动验证我的凭据?因为HttpURLConnection在请求的后台设置了Windows身份验证,所以它对我有效吗 URL url = n

我对HttpURLConnection类的以下代码或行为有点困惑。我有下面的代码,它点击URL(rest服务在.net中)并从中获得响应。当我运行代码时,我在Windows和Unix环境中都得到了响应。我有权访问此URL

当我向无法访问URL的人提供相同的代码时,它会抛出
401 Unauthorized
错误。但在下面的代码中,我无法传递我的凭据,它如何自动验证我的凭据?因为HttpURLConnection在请求的后台设置了Windows身份验证,所以它对我有效吗

    URL url = new URL(URL);         
    HttpURLConnection connection = (HttpURLConnection) url.openConnection(); 
    connection.setRequestMethod("GET");             
    connection.setUseCaches(false); 
    connection.setDoOutput(true); 
    BufferedReader in = new BufferedReader( new InputStreamReader(connection.getInputStream())); 
    String inputLine; 
    StringBuffer response = new StringBuffer(); 
    while ((inputLine = in.readLine()) != null) { 
        response.append(inputLine); 
    } 
    in.close(); 
    System.out.println(response);

不大可能发生的在一种情况下,客户端和服务器之间是否存在代理?或者安全策略是否基于IP地址?这可能是服务器端的一个限制。你在同一个网络中吗?可能只对未知主机执行身份验证?如果我在家运行此代码,很可能会得到服务器响应,而如果我在工作场所运行此代码,代理将要求进行身份验证。@Maurice Perry-没有实现此类ip筛选器。