gpt4 book ai didi

java - HTTP 请求不起作用,使用 setRequestProperty 方法设置授权

转载 作者:行者123 更新时间:2023-12-02 09:00:05 26 4
gpt4 key购买 nike

我正在尝试用 Java 发出 get 请求。但是,当我运行这段代码时,

URL urlForGetRequest = new URL("my_url");   
String readLine = null;
HttpURLConnection conection = (HttpURLConnection) urlForGetRequest.openConnection();
conection.setRequestMethod("GET");

String username = "user";
String password = "pass";

String basicAuth = Base64.getEncoder().encodeToString((username+":"+password).getBytes(StandardCharsets.UTF_8));
System.out.println(basicAuth);

conection.setRequestProperty("Authorization", "Basic "+basicAuth);

int responseCode = conection.getResponseCode();

System.out.println(responseCode);

它总是返回 403。我可以在地址栏中输入 url,它会返回我需要的内容。同样,凭据也是正确的。我是否缺少授权之外的 setRequestProperty?

最佳答案

我猜您网站的 urlForGetRequest 和登录网址不同。当您打开一个网站时,它是一个网址,当您单击登录按钮时,您会请求另一个网址,这应该是您的 urlForGetRequest

首先尝试通过正确的硬编码网址登录。并使用POST方法。然后你可以在代码中硬编码这个 url,或者使用 jsoup(也许是 selenium)解析 HTML 响应。我没有诚实地解决此类问题。如果您可以控制此站点的代码,您可以集成一些其他身份验证选项(0Auth、 token )我对此不太了解,也许有人可以帮助您,这是另一个主题

关于java - HTTP 请求不起作用,使用 setRequestProperty 方法设置授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60227111/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com