Okhttp: java. net .UnknownHostException - PullRequest
       8

Okhttp: java. net .UnknownHostException

0 голосов
/ 14 февраля 2020

Я использую Okhttp3 для использования службы отдыха с подчеркнутым прокси.

Я пробовал следующий код, но происходит исключение, например java. net .UnknownHostException:

Я пытался изменить решение прокси и изменил формат адреса прокси, но ничего не получилось. Пожалуйста, помогите.

int proxyPort = 8080;
                String proxyHost = "proxy";
                final String username = "user";
                final String password = "pass";
                okhttp3.Response response2 = null;

                SSLUtilities.trustAllHostnames();
                SSLUtilities.trustAllHttpsCertificates();

                Authenticator proxyAuthenticator = new Authenticator() {
                  @SuppressWarnings({ "null", "unused" })
                public Request authenticate(Route route, Response response) throws IOException {
                       String credential = Credentials.basic(username, password);
                       return response2.request().newBuilder()
                           .header("Proxy-Authorization", credential)
                           .build();
                  }

                @Override
                public Request authenticate(Route arg0, okhttp3.Response arg1) throws IOException {
                    // TODO Auto-generated method stub
                    return null;
                }
                };

                OkHttpClient c = new OkHttpClient.Builder()
                        .connectTimeout(60, TimeUnit.SECONDS)
                        .writeTimeout(60, TimeUnit.SECONDS)
                        .readTimeout(60, TimeUnit.SECONDS)
                        .proxy(new Proxy(Proxy.Type.HTTP, new InetSocketAddress(proxyHost, proxyPort)))
                        .proxyAuthenticator(proxyAuthenticator)
                        .build();

                logger.info("FMS WEBSERVICE LOG >>> OkHttpClient " + c);

                okhttp3.MediaType mediaType = okhttp3.MediaType.parse("application/x-www-form-urlencoded");

                logger.info("FMS WEBSERVICE LOG >>> mediaType " + mediaType);

                RequestBody body = RequestBody.create(mediaType, "grant_type=client_credentials&client_id=0146b9a4-7e99-4c83-8e9e-6049cfec55da&client_secret=nY3oL5xQ3bJ8yT3nC1nV5bY4mY6eW7yP1nY6dS6rQ2nE5iR0rM&scope=ABLApis");

                logger.info("FMS WEBSERVICE LOG >>> body " + body);

                Request request = new Request.Builder()
                          .url("https://221.120.211.69:443/abl-api/uat/oauth2/token")
                          .post(body)
                          .addHeader("content-type", "application/x-www-form-urlencoded")
                          .addHeader("accept", "application/json")
                          .build();

                logger.info("FMS WEBSERVICE LOG >>> request " + request);

                        okhttp3.Response r = c.newCall(request).execute();

                        logger.info("FMS WEBSERVICE LOG >>> response " + r);

              } catch (Exception e) {

                e.printStackTrace();

              } 
            return "a";

    }
...