通过Java发送Https请求但是未经授权的错误-401

时间:2016-03-21 12:48:39

标签: java web-services

我通过2种方式发送带有用户名和密码的Https请求,但在这两种情况下我都收到错误401-未经授权的错误

  1. 通过URLConnection直接连接

    try {
        URL url = new URL("https://xxx.xxxxx.com/v1/limit/5");
        URLConnection urlConnection = url.openConnection();
        HttpsURLConnection connection = null;
        if(urlConnection instanceof HttpsURLConnection) {
            String authStr = "username"+":"+"password";
            byte[] bytesEncoded = Base64.encodeBase64(authStr.getBytes());
            String authEncoded = new String(bytesEncoded);
            connection = (HttpsURLConnection) url.openConnection();
            connection.setRequestProperty("Authorization", "Basic "+authEncoded);
         } else {
             System.out.println("Please enter an HTTPs URL.");
             return;
         }
    
         BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
         String urlString = "";
         String current;
         while((current = in.readLine()) != null) {
             urlString += current;
         }
         System.out.println(urlString);
    } catch(IOException e) {
        e.printStackTrace();
    }
    
  2. 通过Jersey客户端连接,但同样地我得到了401-unauth错误

0 个答案:

没有答案