REST Aufruf innerhalb proxy
Ich bin eine proxy-Konfiguration für Netzwerk bin, weil ich arbeite für die Organisation.
Ich bin nicht in der Lage, REST-Aufrufe aus java-gleiche Arbeit durch rest-client wie Briefträger etc. auf crome, aber von java seines Scheiterns.Ich habe einen proxy in eclipse.Bitte meinen code unten.Eine Idee, wie man Zugriff auf REST-Dienste in einem proxy -
HttpClient httpClient = new DefaultHttpClient();
HttpGet getRequest = new HttpGet(
"http://xyz.com");
//getRequest.addHeader("accept", "application/xml");
HttpResponse response = httpClient.execute(getRequest);
if (response.getStatusLine().getStatusCode() != 200) {
throw new RuntimeException("Failed : HTTP error code : "
+ response.getStatusLine().getStatusCode());
}
BufferedReader br = new BufferedReader(
new InputStreamReader((response.getEntity().getContent())));
String output;
System.out.println("Output from Server .... \n");
while ((output = br.readLine()) != null) {
System.out.println(output);
}
httpClient.getConnectionManager().shutdown();
}
Ausnahme
org.apache.http.conn.HttpHostConnectException: Connection to http://xyz.com refused
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:158)
at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:149)
at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:121)
at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:561)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:415)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:820)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:754)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:732)
at com.mkyong.rest.RestClient2.main(RestClient2.java:26)
Caused by: java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:123)
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:148)
... 8 more
- Was ist der Fehler/Ausnahme?
- aktualisierte Ausnahme
- Wenn die Adresse lokal ist, aktivieren Sie die proxy-Umgehung (mit dem eclipse-Konfiguration) für die interne Adressen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie Ihre
HttpClient
proxy verwenden.Überprüfen Sie http://hc.apache.org/httpcomponents-client-ga/tutorial/html/connmgmt.html#d5e473
Sth wie:
httpClient..getParams().setParameter(ConnRouteParams.DEFAULT_PROXY, proxy);