gpt4 book ai didi

Java HTTPS 代理/重定向服务器

转载 作者:太空宇宙 更新时间:2023-11-03 14:15:53 25 4
gpt4 key购买 nike

我正在尝试让服务器(用 java 编写)在访问时重定向到 HTTPS url(该 url 永远不会改变)。如果我用

编译代码
java -Djavax.net.ssl.keyStore=mySrvKeystore -Djavax.net.ssl.keyStorePassword=password ProxyServer

并输入地址、端口和本地端口作为

https://google.com 443 5000

并尝试访问

localhost:5000

在我的机器上,然后我得到错误

java.net.UnknownHostException: https://google.com

调试后,我很确定当我尝试创建 SSLSocket (secureServer) 时它会在此代码块中中断。

    SSLSocket secureServer;
try {
SSLSocketFactory factory = (SSLSocketFactory) SSLSocketFactory.getDefault();
secureServer = (SSLSocket) factory.createSocket(host, port);
from_server = secureServer.getInputStream();
to_server = secureServer.getOutputStream();
}

最佳答案

作为主机传递给 factory.createSocket(host,port) 的参数不得在其前面加上协议(protocol)。它应该只是 google.com

原因是 Java 将采用 host 参数并将其作为输入传递给 DNS 查找。如果您在命令行中键入 host https://google.com,您会遇到类似的错误。

关于Java HTTPS 代理/重定向服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20110519/

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