尝试从 Java 连接到 Https url 时出现 401 错误

401 error while trying to connect to a Https url from Java

我尝试使用传递给它的用户名和密码(base64 编码)的 HttpsURLConnection class 访问 https url。

HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();  
            conn.setRequestMethod("GET");  
            conn.setRequestProperty("Accept", "application/json");  
            conn.setRequestProperty("Authorization", "Basic "+userPassword);  

当用户名和密码硬编码在代码中时,它工作正常。

但是,当我在数据库中以 json 格式存储用户名、加密 pwdurl 并尝试获取它们并连接到它时,抛出 401 错误.从 DB 打印值显示值是正确的。

JsonParser jsonParser = new JsonParser();  
JsonObject jsonObject = (JsonObject) jsonParser.parse(dbjson);  
String url= jsonObject.get("url").toString().replace('"', ' ').trim();  

已通过使用 org.json.JSONObject 读取字符串 JSON 和 .getString("") 检索值来解决此问题。