Время соединения истекло при вызове Rest API из Eclipse - PullRequest
0 голосов
/ 22 февраля 2019

Помоги мне!У меня есть ссылка Restful API, я использовал успех вызова инструмента Postman, но когда я кодирую на затмении Restful клиент, это не удается.Я пробовал отключить прокси, но не удалось.

public class JersyGetClient {

    public static void main(String[] args) {
        String url = "https://abc.custhelp.com/services/rest/connect/v1.4/accounts";
        String name = "thai.hoangan";
        String password = "123456a@";
        String authString = name + ":" + password;
        String authStringEnc = new BASE64Encoder().encode(authString.getBytes());
        System.out.println("Base64 encoded auth string: " + authStringEnc);
        Client restClient = Client.create();
        WebResource webResource = restClient.resource(url);
        ClientResponse resp = webResource.accept("application/json")
                .header("Authorization", "Basic " + authStringEnc)
                .header("OSvC-CREST-Application-Context", "asd")
                .get(ClientResponse.class);
        if (resp.getStatus() != 200) {
            System.err.println("Unable to connect to the server");
        }
        String output = resp.getEntity(String.class);
        System.out.println("response: " + output);
    }
}

Вывод:

Исключение в потоке "main" com.sun.jersey.api.client.ClientHandlerException:

java.net.ConnectException: истекло время ожидания соединения: подключиться по com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle (URLConnectionClientHandler.java:155) по адресу com.sun.jersey.api.client.Client.handle(Client.java:652) в com.sun.jersey.api.client.WebResource.handle (WebResource.java:682) в com.sun.jersey.api.client.WebResource.access $ 200 (WebResource.java:74)в com.sun.jersey.api.client.WebResource $ Builder.get (WebResource.java:509) в JersyGetClient.main (JersyGetClient.java:22). Причина: java.net.ConnectException: истекло время ожидания соединения: подключиться в java.net.DualStackPlainSocketImpl.connect0 (собственный метод) по адресу java.net.DualStackPlainSocketImpl.socketConnect (DualStackPlainSocketImpl.java:79) по адресу java.net.AbstractPlainSocketImpl.doConnect (AbstractPlainSocketIlmp.jpgAj.50)ectToAddress (AbstractPlainSocketImpl.java:206) по адресу java.net.AbstractPlainSocketImpl.connect (AbstractPlainSocketImpl.java:188) по адресу java.net.PlainSocketImpl.connect (PlainSocketImpl.javaIcket.jl.: 392) в java.net.Socket.connect (Socket.java:589) в sun.security.ssl.SSLSocketImpl.connect (SSLSocketImpl.java:668) в sun.security.ssl.BaseSSLSocketImpl.connect (BaseSSLSocketImpl.java:173) в sun.net.NetworkClient.doConnect (NetworkClient.java:180) в sun.net.www.http.HttpClient.openServer (HttpClient.java:432) в sun.net.www.http.HttpClient.openServer (HttpClient.java: 527) на sun.net.www.protocol.https.HttpsClient. (HttpsClient.java:264) на sun.net.www.protocol.https.HttpsClient.New (HttpsClient.java:367) на sun.net.www.protocol.https.pURLConnection.plainConnect (HttpURLConnection.java:999) на сайте sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect (AbstractDelegateHttpsURLConnection.java:177) на сайте sun.net.www.protocol.httttp:1513..getResponseCode (HttpsURLConnectionImpl.java:338) в com.sun.jersey.client.urlconnection.URLConnectionClientHandler._invoke (URLConnectionClientHandler.java:253) в com.sun.jlient) ... еще 5

1 Ответ

0 голосов
/ 26 февраля 2019

О, я решил, просто добавьте:

    System.setProperty("https.proxyHost", "proxytest.vcb");
    System.setProperty("https.proxyPort", "8080");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...