我使用的Apache HttpClient 4,它工作正常。唯一不起作用的是自定义端口。看起来像根目录被抓取并且端口被忽略。Apache HttpClient和自定义端口
HttpPost post = new HttpPost("http://myserver.com:50000");
HttpResponse response = httpClient.execute(post);
如果没有定义端口,则http-和https连接可以正常工作。 该计划注册表被定义如下:
final SchemeRegistry sr = new SchemeRegistry();
final Scheme http = new Scheme("http", 80,
PlainSocketFactory.getSocketFactory());
sr.register(http);
final SSLContext sc = SSLContext.getInstance(SSLSocketFactory.TLS);
sc.init(null, TRUST_MANAGER, new SecureRandom());
SSLContext.setDefault(sc);
final SSLSocketFactory sf = new SSLSocketFactory(sc,
SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
final Scheme https = new Scheme("https", 443, sf);
sr.register(https);
我如何可以自定义端口的请求?
问题是什么? –
Erm ...当您的套接字在端口80和443上侦听时,您如何连接到50000端口?如果这不是'最后的Scheme http = new Scheme(“http”,50000,PlainSocketFactory.getSocketFactory()); '? –
我也这么认为,但方案端口只是没有给出端口时的标准。如果明确设置了端口,则将使用该端口而不是端口。 – Stephan