gpt4 book ai didi

java - 如何在 Java 的 Native HTTP Client 上使用代理密码身份验证

转载 作者:太空宇宙 更新时间:2023-11-04 09:12:45 25 4
gpt4 key购买 nike

如果代理需要密码身份验证来处理 Java 的 native HTTP 客户端请求,我会尝试使用密码身份验证。

我尝试了很多东西,最常见的解决方案应用于我的程序

String username = "username";
String password = "password";

Authenticator.setDefault( new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password.toCharArray());
}
});

但之后我在发送请求时仍然收到错误 407(这在 IP 身份验证代理上工作正常)。该代理在通过 Chrome 扩展程序运行的浏览器上运行良好。

最佳答案

如果您尝试对代理进行身份验证,通常需要在请求中添加 Proxy-Authorization header 。

参见:https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Proxy-Authorization

类似于

String authentication = "username:password";
String authenticationEncoded = Base64.getEncoder().encodeToString(authentication .getBytes());
HttpHeaders headers = new HttpHeaders();
headers.add("Proxy-Authorization", "Basic " + authenticationEncoded );

关于java - 如何在 Java 的 Native HTTP Client 上使用代理密码身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59481683/

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